/**
 * Landing page
 *
*/
/*
* MEDIA QUERIES
* Breakpoints for responsive sites
*/
/*
* TEXT TRUNCATE
* An easy way to truncate text with an ellipsis. Requires the element to be block or inline-block.
* Usage: @include text-truncate;
* Source: http://web-design-weekly.com/2013/05/12/handy-sass-mixins/
*/
/*
* DON'T BREAK
* Useful mixing so links don't overrun their container
* Usage: @include dontbreak();
* Source: https://css-tricks.com/snippets/css/prevent-long-urls-from-breaking-out-of-container/
*/
/*
* Skew
* Useful mixing to create skewed edges
* Usage: @include angle-edge(#fff, bottomright, 3deg, topleft, 3deg);
* Source: http://www.hongkiat.com/blog/skewed-edges-css/
*/
/*
* Pretty radio and checkboxes
* Usage: @include pretty-checkradio(label);
* Source: https://stackoverflow.com/questions/12743837/can-i-use-variables-for-selectors
*/
body.landing-page header.header .header__main {
  padding: 40px 0; }

body.landing-page header.header .logo {
  width: 270px; }

body.landing-page .landing__page__heading {
  padding-bottom: 40px; }
  body.landing-page .landing__page__heading h1 {
    font-size: 39px;
    font-weight: 800;
    color: #7b5aa1;
    margin-bottom: 10px; }
  body.landing-page .landing__page__heading h2 {
    font-size: 33px;
    font-weight: 800;
    color: #7b5aa1;
    margin-bottom: 10px; }
  body.landing-page .landing__page__heading h4 {
    font-size: 19px;
    color: #525f7f;
    max-width: 70%;
    line-height: 30px; }
    @media (max-width: 700px) {
      body.landing-page .landing__page__heading h4 {
        max-width: 100%; } }

body.landing-page .landing__page__banner {
  height: calc(100vh - 400px);
  min-height: 500px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  max-width: 1400px;
  width: 100%;
  margin: 0 auto;
  border-radius: 5px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-bottom: 60px; }
  @media (max-width: 1200px) {
    body.landing-page .landing__page__banner {
      height: auto; } }
  body.landing-page .landing__page__banner .landing__form {
    width: 450px;
    background: #7b5aa1;
    border-radius: 5px;
    padding: 40px;
    margin: -120px 40px 0 0;
    -webkit-align-self: flex-start;
        -ms-flex-item-align: start;
            align-self: flex-start; }
    @media (max-width: 1200px) {
      body.landing-page .landing__page__banner .landing__form {
        margin: 0; } }
    @media (max-width: 700px) {
      body.landing-page .landing__page__banner .landing__form {
        width: 100%; } }
    @media (max-width: 550px) {
      body.landing-page .landing__page__banner .landing__form {
        padding: 30px 20px; } }
    body.landing-page .landing__page__banner .landing__form h3 {
      font-size: 22px;
      font-weight: 700;
      color: #fff;
      margin-bottom: 20px; }
    body.landing-page .landing__page__banner .landing__form .gform_wrapper input[type="submit"] {
      background: #64c82d;
      width: 100%;
      font-size: 20px;
      color: #fff;
      padding: 17px 30px; }
    body.landing-page .landing__page__banner .landing__form .gform_wrapper .gfield_label {
      color: #fff !important; }

body.landing-page .landing__form .gform_wrapper form .validation_error {
  background: tomato;
  color: #fff;
  border: none;
  font-size: 13px;
  border: 5px; }

body.landing-page .landing__form .gform_wrapper form .gfield_error input {
  background: #fff2ef;
  background: #fff; }
  body.landing-page .landing__form .gform_wrapper form .gfield_error input::-webkit-input-placeholder {
    color: tomato;
    -webkit-transition: all .4s ease;
    transition: all .4s ease; }
  body.landing-page .landing__form .gform_wrapper form .gfield_error input::-moz-placeholder {
    color: tomato;
    -webkit-transition: all .4s ease;
    transition: all .4s ease; }
  body.landing-page .landing__form .gform_wrapper form .gfield_error input:-ms-input-placeholder {
    color: tomato;
    -webkit-transition: all .4s ease;
    transition: all .4s ease; }
  body.landing-page .landing__form .gform_wrapper form .gfield_error input:-moz-placeholder {
    color: tomato;
    -webkit-transition: all .4s ease;
    transition: all .4s ease; }
  body.landing-page .landing__form .gform_wrapper form .gfield_error input:focus::-webkit-input-placeholder {
    color: rgba(255, 99, 71, 0.4);
    -webkit-transition: all .4s ease;
    transition: all .4s ease; }
  body.landing-page .landing__form .gform_wrapper form .gfield_error input:focus::-moz-placeholder {
    color: rgba(255, 99, 71, 0.4);
    -webkit-transition: all .4s ease;
    transition: all .4s ease; }
  body.landing-page .landing__form .gform_wrapper form .gfield_error input:focus:-ms-input-placeholder {
    color: rgba(255, 99, 71, 0.4);
    -webkit-transition: all .4s ease;
    transition: all .4s ease; }
  body.landing-page .landing__form .gform_wrapper form .gfield_error input:focus:-moz-placeholder {
    color: rgba(255, 99, 71, 0.4);
    -webkit-transition: all .4s ease;
    transition: all .4s ease; }

body.landing-page .landing__form .gform_wrapper form .gfield_error select {
  background: #fff; }

body.landing-page .landing__form .gform_wrapper form .gform_page_footer,
body.landing-page .landing__form .gform_wrapper form .gform_footer {
  padding: 0; }

body.landing-page .landing__page__boxes {
  margin: 20px 0 80px; }
  body.landing-page .landing__page__boxes .landing__page__boxes__wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    body.landing-page .landing__page__boxes .landing__page__boxes__wrapper article {
      width: 33.3333333333%;
      padding-right: 40px;
      -webkit-box-flex: 1;
      -webkit-flex: 1 0 320px;
          -ms-flex: 1 0 320px;
              flex: 1 0 320px; }
      @media (max-width: 700px) {
        body.landing-page .landing__page__boxes .landing__page__boxes__wrapper article {
          margin-bottom: 40px; } }
      body.landing-page .landing__page__boxes .landing__page__boxes__wrapper article figure {
        margin-bottom: 30px; }
        body.landing-page .landing__page__boxes .landing__page__boxes__wrapper article figure i {
          font-size: 43px; }
      body.landing-page .landing__page__boxes .landing__page__boxes__wrapper article h4 {
        font-size: 19px;
        font-weight: 700;
        margin-bottom: 10px; }
      body.landing-page .landing__page__boxes .landing__page__boxes__wrapper article p {
        font-size: 13px;
        line-height: 22px;
        color: #525f7f; }
      body.landing-page .landing__page__boxes .landing__page__boxes__wrapper article:nth-child(1n+1) figure i,
      body.landing-page .landing__page__boxes .landing__page__boxes__wrapper article:nth-child(1n+1) h4 {
        color: #7b5aa1; }
      body.landing-page .landing__page__boxes .landing__page__boxes__wrapper article:nth-child(2n+2) figure i,
      body.landing-page .landing__page__boxes .landing__page__boxes__wrapper article:nth-child(2n+2) h4 {
        color: #76c8d2; }
      body.landing-page .landing__page__boxes .landing__page__boxes__wrapper article:nth-child(3n+3) figure i,
      body.landing-page .landing__page__boxes .landing__page__boxes__wrapper article:nth-child(3n+3) h4 {
        color: #bfcf5f; }

body.landing-page footer {
  margin-top: auto;
  background: #f2f5fb;
  padding: 20px 0; }
  body.landing-page footer .max__width {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    @media (max-width: 800px) {
      body.landing-page footer .max__width {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column; } }
    body.landing-page footer .max__width .footer__credits {
      font-size: 13px; }
      @media (max-width: 800px) {
        body.landing-page footer .max__width .footer__credits {
          margin-bottom: 20px; } }
      body.landing-page footer .max__width .footer__credits a {
        color: #473d54; }
        body.landing-page footer .max__width .footer__credits a:hover {
          color: #7b5aa1; }
    body.landing-page footer .max__width .footer__logo {
      -webkit-box-flex: 2;
      -webkit-flex: 2;
          -ms-flex: 2;
              flex: 2;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center; }
      @media (max-width: 800px) {
        body.landing-page footer .max__width .footer__logo {
          margin-bottom: 20px; } }
      body.landing-page footer .max__width .footer__logo figure {
        width: 150px; }
    @media (max-width: 800px) {
      body.landing-page footer .max__width .footer__legal {
        margin-bottom: 20px; } }
    body.landing-page footer .max__width .footer__legal ul {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: end;
      -webkit-justify-content: flex-end;
          -ms-flex-pack: end;
              justify-content: flex-end; }
      body.landing-page footer .max__width .footer__legal ul li {
        font-size: 13px; }
        body.landing-page footer .max__width .footer__legal ul li a {
          color: #473d54;
          padding: 0 10px; }
          body.landing-page footer .max__width .footer__legal ul li a:hover {
            color: #7b5aa1; }
