@import "bourbon";
@mixin opensans {
  font-family: 'Open Sans', sans-serif;
}
@mixin clearfix {
  &:after {
    content: "";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
  }
}
$white: #fff;
$black: #000;

[class*='gr_nine_set'] {
  &.tve_gray_bg {
    background-image: none;
    background: #c2c2c2;
  }
}
#tve_gr_nine_set {
  [class*='gr_nine_set'] {
    @include clearfix();
    background: #fff;
    .bold_text {
      font-weight: 600;
    }
    a {
      color: #1c7fc4;
      text-decoration: underline;
      &:hover {
        text-decoration: none;
      }
    }
    p {
      a {
        color: inherit;
        text-decoration: none;
      }
    }
    h1 {
      @include opensans();
      color: #606060;
      font-weight: 400;
      font-size: 95px;
      line-height: 1.273em;
      letter-spacing: normal;
      &.bold_text {
        font-weight: 600;
      }
    }
    h2 {
      @include opensans();
      color: #606060;
      font-weight: 400;
      font-size: 95px;
      line-height: 1.273em;
      letter-spacing: normal;
      &.bold_text {
        font-weight: 600;
      }
      .bold_text {
        color: #1c7fc4;
        font-weight: 600;
      }
    }
    h3 {
      @include opensans();
      color: #606060;
      font-weight: 400;
      font-size: 90px;
      line-height: 1.222em;
      letter-spacing: normal;
      &.bold_text {
        font-weight: 600;
      }
    }
    h4 {
      @include opensans();
      color: #606060;
      font-weight: 400;
      font-size: 80px;
      line-height: 1.222em;
      letter-spacing: normal;
      &.bold_text {
        font-weight: 600;
      }
    }
    h5 {
      @include opensans();
      color: #606060;
      font-weight: 400;
      font-size: 40px;
      line-height: 1.222em;
      letter-spacing: normal;
      &.bold_text {
        font-weight: 600;
      }
    }
    h6 {
      @include opensans();
      color: #606060;
      font-weight: 400;
      font-size: 30px;
      line-height: 1.222em;
      letter-spacing: normal;
      &.bold_text {
        font-weight: 600;
      }
    }
    p {
      @include opensans();
      color: #606060;
      font-size: 22px;
      font-weight: 400;
      line-height: 1.467em;
      margin-bottom: 20px;
      &.bold_text {
        font-weight: 600;
      }
    }
    blockquote {
      @include opensans();
      background: transparent;
      border: 0;
      color: #606060;
      font-style: normal;
      font-size: 22px;
      font-weight: 400;
      line-height: 1.364em;
      letter-spacing: 1px;
      padding-left: 90px;
      position: relative;
      &:before {
        content: '\0201C';
        color: rgba(#606060, .45);
        display: block;
        font-size: 217px;
        font-weight: 300;
        position: absolute;
        left: 0;
        top: 60px;
      }
    }
    ol.thrv_wrapper {
      counter-reset: ol-counter;
      list-style-type: none;
      li {
        @include opensans();
        color: #606060;
        font-size: 22px;
        font-weight: 400;
        line-height: 30px;
        letter-spacing: 1px;
        &:before {
          color: #1c7fc4;
          content: counter(ol-counter) '.' !important;
          counter-increment: ol-counter;
          font-weight: 500;
          padding-right: 10px;
        }
        &.bold_text {
          font-weight: 600;
        }
      }
    }
    ul.thrv_wrapper {
      list-style-type: none;
      li {
        @include opensans();
        color: #606060;
        font-size: 22px;
        font-weight: 400;
        line-height: 30px;
        letter-spacing: 1px;
        &:before {
          content: '\02218';
          color: #1c7fc4;
          font-weight: 500;
          font-size: 30px;
          line-height: 15px;
          padding-right: 10px;
          position: relative;
          top: 0;
        }
        &.bold_text {
          font-weight: 600;
        }
      }
    }
  }
}
#tve_gr_nine_set {
  @include opensans();
  text-shadow: none;
  position: relative;
  article {
    padding-bottom: 0;
  }
  .gr-close-button {
    @include transform(translateX(-50%));
    cursor: pointer;
    margin: 0 auto;
    position: absolute;
    bottom: 20px;
    left: 50%;
  }
  .thrv-greedy-ribbon {
    padding-top: 15vh;
  }
  .tve-greedy-ribbon-content {
    @include clearfix();
    max-width: 1120px;
    margin: 0 auto;
  }
  .thrv_content_container_shortcode {
    position: relative;
    z-index: 1;
  }
  .thrv_lead_generation {
    &.tve_white {
      .tve_lg_submit {
        button {
          color: #4f4f4f;
          text-shadow: none;
          &:hover, &:active {
            color: #4f4f4f;
          }
        }
      }
    }
    &.thrv_lead_generation_vertical {
      .tve_lg_submit {
        width: 45%;
      }
    }
    .thrv_lead_generation_container {
      .tve_lead_generated_inputs_container {
        .thrv_icon.thrv_wrapper {
          top: 40%;
        }
      }
      .tve_lg_input_container {
        .thrv_icon.thrv_wrapper {
          .tve_sc_icon {
            font-size: 40px;
          }
        }
      }
    }
    .tve_lg_submit {
      button {
        @include opensans();
        border-radius: 50px;
        border: 4px solid #fff;
        color: $white;
        font-weight: 600;
        font-size: 41px;
        line-height: 46px;
        padding: 22px 10px;
        text-shadow: 0 -2px 0 rgba(#000, .28);
        &:hover {
          background: rgba(#fff, .55);
          text-shadow: none;
        }
        &:active {
          background: #fff;
          text-shadow: none;
        }
      }
    }
    input[type="text"], input[type="email"] {
      @include opensans();
      border-radius: 8px;
      border: 0;
      background: $white;
      box-shadow: 1px 2px 0 0 rgba(#000, .15) inset, 1px 1px 0 0 #fff;
      color: #363636;
      font-size: 28px;
      font-weight: 400;
      font-style: italic;
      height: auto;
      line-height: 35px;
      margin-bottom: 40px;
      padding: 25px 20px !important;
      &:hover {
        color: #adadad;
      }
      &:focus {
        color: #363636;
      }
    }
  }
  /*
    autoresponder elements
  */
  .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 {
            border: 2px solid #232323;
          }
          &:after {
            background: #232323;
          }
        }
      }
      + label {
        @include opensans();
        color: #232323;
        display: inline-block;
        position: relative;
        font-size: 22px;
        font-weight: 300;
        &:before {
          background-color: transparent;
          border-radius: 100%;
          content: '';
          display: inline-block;
          height: 18px;
          margin-right: 10px;
          position: relative;
          top: -3px;
          vertical-align: middle;
          width: 18px;
        }
        &:after {
          @include transition(background-color .3s);
          background-color: transparent;
          border-radius: 100%;
          content: '';
          height: 10px;
          position: absolute;
          top: 10px;
          left: 5px;
          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: #232323;
          cursor: pointer;
          font-size: 22px;
          font-weight: 300;
          position: relative;
          padding-left: 35px;
          &:before {
            border-radius: 2px;
            background-color: transparent;
            content: '';
            height: 18px;
            position: absolute;
            left: 0;
            top: 7px;
            width: 18px;
          }
          &:after {
            @include transition(all, .2s);
            content: "\02713";
            font-size: 20px;
            font-weight: 600;
            position: absolute;
            top: 2px;
            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 opensans();
      background-color: transparent;
      color: #3a3a3a;
      border-radius: 50px;
      cursor: pointer;
      display: inline-block;
      font-size: 22px;
      font-weight: 400;
      line-height: 35px;
      height: 53px;
      margin: 0;
      outline: none;
      padding: 0 40px 0 10px!important;
      option {
        color: #232323;
        font-size: 19px;
        font-weight: 300;
      }
      &:hover {
        background: rgba(#fff, .55);
      }
    }
    .tve_sc_icon {
      margin-right: 20px;
    }
    &:after {
      border-radius: 50%;
      border: 1px solid;
      content: "\002C7";
      font-size: 40px;
      font-weight: 700;
      height: 20px;
      line-height: 42px;
      pointer-events: none;
      position: absolute;
      top: 17px;
      right: 20px;
      text-align: center;
      width: 20px;
    }
  }

}
$color-pallete: 'blue' #37a3e6 #329ae3,
'black' #353535 #313131,
'green' #2bb569 #27ae60,
'white' #eef1f2 #ecf0f1,
'orange' #e2c800 #dfc300,
'purple' #ae75c4 #a66bbe,
'red' #e95341 #e74c3c,
'teal' #1cbdc2 #1ab6bc;

@each $color in $color-pallete {
  #tve_gr_nine_set {
    .thrv-greedy-ribbon.tve_#{nth($color, 1)} {
      background: nth($color, 2);
    }
    .thrv_icon.thrv_wrapper {
      span.tve_sc_icon.tve_#{nth($color, 1)} {
        color: nth($color, 3);
      }
    }
    .thrv_lead_generation.tve_#{nth($color, 1)} {
      input[type="text"], input[type="email"] {
        &:hover {
          box-shadow: 0 0 0 1px nth($color, 3);
        }
        &:active {
          box-shadow: 0 0 0 2px nth($color, 3);
        }
      }
      button {
        @include background-image(linear-gradient(nth($color, 2), nth($color, 3)));
        &:hover {
          border: 4px solid nth($color, 3);
          color: nth($color, 3);
        }
      }
      .tve_lg_dropdown {
        select {
          border: 4px solid nth($color, 2);
        }
        &:after {
          color: nth($color, 2);
        }
      }
      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), .75);
              border: 1px solid rgba(nth($color, 2), .75);
            }
          }
        }
      }
    }
  }
}
@font-face {
  font-family: 'tve-leads-gr-nine-set-icons';
  src: url('fonts/gr_nine_set/gr_nine_set_icons.eot?o8i8n4');
  src: url('fonts/gr_nine_set/gr_nine_set_icons.eot?#iefixo8i8n4') format('embedded-opentype'),
  url('fonts/gr_nine_set/gr_nine_set_icons.woff?o8i8n4') format('woff'),
  url('fonts/gr_nine_set/gr_nine_set_icons.ttf?o8i8n4') format('truetype'),
  url('fonts/gr_nine_set/gr_nine_set_icons.svg?o8i8n4#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
}
[class^="gr-nine-set"], [class*=" gr-nine-set"] {
  color: inherit;
  font-family: 'tve-leads-gr-nine-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;
}
.gr-nine-set-mail:before {
  content: "\e900";
}
@media only screen and (max-width: 800px) {
  #tve_gr_nine_set {
    .thrv-greedy-ribbon {
      padding: 50px 20px 20px;
    }
    .thrv_lead_generation.thrv_lead_generation_vertical .tve_lg_submit {
      width: 100%;
    }
    .gr-button-container {
      .tve_content_inner {
        margin-top: 0 !important;
        width: 100% !important;
      }
    }
    .thrv_lead_generation {
      input[type="text"], input[type="email"] {
        font-size: 20px;
        line-height: 25px;
        margin-bottom: 5px;
        padding: 10px !important;
      }
      .tve_lg_submit {
        button {
          font-size: 20px;
          line-height: 25px;
          padding: 10px;
        }
      }
    }
    .gr-close-button {
      bottom: 40px;
      .tve_sc_icon {
        font-size: 15px !important;
      }
    }
  }
}
@media only screen and (max-width: 700px) {
  #tve_gr_nine_set {
    h2 {
      font-size: 30px!important;
    }
    h2, p {
      margin-bottom: 15px !important;
    }
    p {
      font-size: 15px !important;
    }
    .thrv_lead_generation_container {
      .tve_lg_input_container {
        .thrv_icon.thrv_wrapper {
          .tve_sc_icon {
            font-size: 20px!important;
          }
        }
      }
    }
    .gr-close-button {
      bottom: 10px;
      .tve_sc_icon {
        font-size: 15px !important;
        padding: 5px;
      }
    }
  }
}
@media only screen and (max-height: 800px) {
  #tve_gr_nine_set {
    h2 {
      font-size: 30px !important;
      margin-bottom: 10px!important;
    }
    p {
      font-size: 20px!important;
      margin-bottom: 10px !important;;
    }
    .thrv_lead_generation.thrv_lead_generation_vertical .tve_lg_submit {
      width: 100%;
    }
    .gr-button-container {
      .tve_content_inner {
        margin-top: 0 !important;
        width: 100% !important;
      }
    }
    .thrv_lead_generation {
      input[type="text"], input[type="email"] {
        font-size: 20px;
        line-height: 25px;
        margin-bottom: 5px;
        padding: 10px !important;
      }
      .tve_lg_submit {
        button {
          font-size: 20px;
          line-height: 25px;
          padding: 10px;
        }
      }
    }
    .gr-close-button {
      bottom: 10px;
      .tve_sc_icon {
        font-size: 15px !important;
        padding: 5px;
      }
    }
  }
}
@import "_responsive";
