header{
    height:50%;
    min-height:450px;
    max-height:550px;
}
section.signup .edge-content,
section.signup .edge-content--lower,
section.signup .edge-content--lower:before,
section.signup .edge-content--upper{
    background-color:rgba(244,244,244,1);
}
section.signup .edge-content--lower:before{
    box-shadow:0px 0px 100px rgba(0,0,0,.8);
    box-shadow:0px 0px 0px rgba(0,0,0,0);
}
section.signup h1{
    font-size:7em;
}
section.signup .columns--2 h2{
    text-align:left;
    font-family:"Playfair Display",sans-serif;
    font-size:2.2em;
    padding:0 0 20px 0;
    width:100%;
    line-height:130%;
}
.signup .form--wrapper{
    display:block;
    margin:0 auto;
    width:100%;
    max-width:900px;
    border-radius:2px;
    box-sizing:border-box;
    box-shadow:0px 4px 10px rgba(0,0,0,.2);
    background-color:#fff;
    padding:40px 0;
    position:relative;
}
.signup .form--wrapper .signup--icon{
    height:60px;
    width:100%;
    position:relative;
}
.signup .form--wrapper .signup--icon .ui-arrow{
    border-radius:50%;
    background-color:#00e3a6;
}

.signup .form--wrapper .selected--wrapper{
    width:100%;
    box-sizing:border-box;
    padding:80px 46px 20px 46px;
    display:block;
    max-width:740px;
    margin:0 auto;
}
.signup .selected--plan{
    width:100%;
    box-sizing:border-box;
    border-radius:3px;
    border:1px solid #e8e8e8;
    padding:16px 0px 0 0px;
    position:relative;
}
.signup .selected--plan label{
    height:32px;
    width:100%;
    position:absolute;
    left:0px;
    top:-32px;
    line-height:100%;
    font-family:"Roboto",sans-serif;
    font-weight:normal;
    color:#25e3a7;
    text-transform:uppercase;
    letter-spacing:3px;
    display:block;
    font-size:1.6em;
}
.signup .selected--plan h2{
    width:100%;
    font-weight:400;
    font-family:"Roboto",sans-serif;
    font-size:2.6em;
    color:#25e3a7;
    padding:0 126px 0 20px;
    margin:0;
    box-sizing:border-box;
}
.signup .selected--plan h2 span{
    font-weight:300;
    color:#575757;
    opacity:.3;
}
.signup .selected--plan a.edit{
    position:absolute;
    right:20px;
    top:50%;
    transform:translate(0,-50%);
    display:inline-block;
    box-sizing:border-box;
    padding:0 22px;
    height:42px;
    line-height:40px;
    border-radius:21px;
    border:1px solid #25e3a7;
    font-size:1.6em;
    font-weight:bold;
    transition:all .3s;
    background-color:#25e3a7;
    color:#fff;
}
.signup .selected--plan a.edit:hover{
    color:#25e3a7;
    background-color:#fff;
}
.signup .selected--plan a.edit:active{
    background-color:#1aac8e;
    color:#fff;
    border-color:#1aac8e;
}
.signup .selected--plan-packages{
    width:100%;
    box-sizing:border-box;
    border-bottom:1px solid #f6f6f6;
    padding:0px 20px 18px 20px;
}
.signup .selected--plan-packages span{
    display:inline-block;
    height:24px;
    line-height:24px;
    font-size:1.6em;
    color:#575757;
    float:left;
    position:relative;
    padding-left:24px;
    margin-right:20px;
}
.signup .selected--plan-packages span:before{
    height:18px;
    width:18px;
    border:1px solid #25e3a7;
    border-radius:9px;
    box-sizing:border-box;
    content:"+";
    display:block;
    text-align:center;
    color:#25e3a7;
    position:absolute;
    left:0px;
    top:50%;
    transform:translate(0,-50%);
    line-height:15px;
    text-align:center;
    font-weight:300;
    padding:0 0 0 1px;
}
.signup .form--wrapper h1{
    font-family:"Playfair Display",serif;
    font-weight:normal;
    font-size:3.8em;
    text-align:center;
    width:100%;
    max-width:740px;
    margin:0 auto;
    box-sizing:border-box;
    padding:20px 46px;
    display:block;
    color:#00e3a6;
    line-height:100%;
}
.signup .form--wrapper h1 span{
    font-family:"Roboto",sans-serif;
    font-weight:300;
    text-transform:uppercase;
    letter-spacing:2px;
    color:#272727;
    font-size:.45em;
}
.form--group{
    display:block;
    width:100%;
    max-width:740px;
    box-sizing:border-box;
    padding:0 46px;
    margin:0 auto 30px auto;
}
.form--group h2{
    font-weight:400;
    text-transform:uppercase;
    color:#00e3a6;
    letter-spacing:3px;
    margin-top:20px;
}
.input--wrapper{
    width:100%;
    position:relative;
    padding:20px 0 0 0;
}
/*
.input--wrapper.required:after{
    height:22px;
    width:22px;
    border-radius:12px;
    background-color:#00e3a6;
    border:1px solid #00e3a6;
    letter-spacing:0;
    color:#fff;
    position:absolute;
    right:0px;
    top:33px;
    z-index:100;
    content:"*";
    font-weight:300;
    font-size:2.2em;
    text-align:center;
    line-height:26px;
    opacity:.8;
    overflow:hidden;
    box-sizing:border-box;
    padding:0 2px 0 3px;
}*/
.input--wrapper input[type="text"],
.input--wrapper input[type="password"],
.input--wrapper input[type="email"],
.input--wrapper input[type="tel"]{
    width: 100%;
    border: none;
    border-bottom: 1px solid #cacaca;
    border-radius:0px;
    box-sizing: border-box;
    display: block;
    margin: 0px;
    padding: 0 0;
    height: 48px;
    font-size: 1.8em;
    color: #272727;
    transition: all .3s;
    outline: none;
}
.input--wrapper input[type="text"]:focus,
.input--wrapper input[type="password"]:focus,
.input--wrapper input[type="email"]:focus,
.input--wrapper input[type="tel"]:focus{
    border-bottom:2px solid #00e3a6;
    padding:0 10px;
}
.input--wrapper input::-webkit-input-placeholder {
    font-weight:300;
    text-transform:lowercase;
    letter-spacing:2px;
}

.input--wrapper input:-moz-placeholder {
    font-weight:300;
    text-transform:lowercase;
    letter-spacing:2px;
}

.input--wrapper input::-moz-placeholder {
    font-weight:300;
    text-transform:lowercase;
    letter-spacing:2px;
}

.input--wrapper input:-ms-input-placeholder {
    font-weight:300;
    text-transform:lowercase;
    letter-spacing:2px;
}
.input--wrapper label:not(.show--inline){
    position:absolute;
    top:6px;
    left:0px;
    width:100%;
    height:20px;
    overflow:hidden;
}
.input--wrapper label:not(.show--inline) .input--label{
    height:20px;
    line-height:24px;
    font-size:1.1em;
    font-weight:400;
    letter-spacing:2px;
    color:#272727;
    opacity:0;
    transform:translateY(100%);
    transition:all .3s;
}
.input--wrapper.hasInput label:not(.show--inline) .input--label{
    transform:translateY(0);
    opacity:1;
}
.input--wrapper input[type="checkbox"]{
    position:absolute;
    left:-1000px;
    opacity:0;
}
.input--wrapper label.show--inline{
    width:100%;
    height:32px;
    box-sizing:border-box;
}
.input--wrapper label.show--inline .input--label{
    width:100%;
    height:32px;
    line-height:32px;
    font-size:1.8em;
    font-weight:300;
    letter-spacing:2px;
    position:relative;
    left:32px;
}
.input--wrapper input[type="checkbox"] + label.show--inline .input--checkbox{
    height:20px;
    width:20px;
    border-radius:2px;
    box-sizing:border-box;
    border:1px solid #cacaca;
    position:absolute;
    left:0px;
    top:26px;
}
.input--wrapper input[type="checkbox"] + label.show--inline .input--checkbox:before{
    transform:rotate(45deg) translate(-105%,-35%);
    box-sizing:border-box;
    height:22px;
    width:16px;
    display:block;
    position:absolute;
    left:50%;
    top:50%;
    z-index:100;
    border-bottom:5px solid #00e3a6;
    border-right:5px solid #00e3a6;
    border-radius:1px;
    content:"";
    transition:all .3s;
    opacity:0;
}
.input--wrapper input[type="checkbox"]:checked + label.show--inline .input--checkbox:before{
    opacity:1;
}
.input--wrapper label.show--inline .input--label a{
    color:#00e3a6;
}


.input--info{
    height:0px;
    width:100%;
    position:relative;
    opacity:0;
    transition:all .3s;
}
.hasInput .input--info{
    opacity:1;
}
.input--info .pw-state,
.input--info .input--ok{
    box-sizing:border-box;
    position:absolute;
    right:0px;
    bottom:10px;
    height:24px;
    width:24px;
    border-radius:12px;
    border:1px solid rgba(0,0,0,0);
    transition:all .3s;
}
@keyframes rotate{
    0%{transform:rotate(0deg)}
    100%{transform:rotate(360deg)}
}
@keyframes heartbeat{
    0%{transform:scale(1.3)}
    75%{transform:scale(1.1)}
    82%{transform:scale(1.3)}
    100%{transform:scale(1.1)}
}
.input--info .pw-state.veryWeak,
.input--info .input--ok.notOk{
    border-top:1px solid rgba(0,0,0,.3);
    animation-name: rotate;
    animation-duration:2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}
.input--info .pw-state.weak{
    border-top:1px solid rgba(0,0,0,.3);
    border-bottom:1px solid rgba(0,0,0,.3);
    animation-name: rotate;
    animation-duration:1.5s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}
.input--info .pw-state:before,
.input--info .input--ok:before{
    position:absolute;
    left:50%;
    top:50%;
    height:12px;
    width:8px;
    box-sizing:border-box;
    border-bottom:3px solid rgba(27,277,166,1);
    border-right:3px solid rgba(27,277,166,1);
    content:"";
    transform:rotate(45deg) translate(-100%,-20%);
    transition:all .3s;
    opacity:0;
}
.input--info .pw-state.normal{
    border:1px solid rgba(0,277,166,1)
}
.input--info .pw-state.normal:before{
    opacity:1;
    transition-delay:.3s;
}
.input--info .pw-state.medium,
.input--info .pw-state.strong,
.input--info .input--ok.isOk{
    border:12px solid rgba(37,277,166,1)
}
.input--info .pw-state.medium:before,
.input--info .pw-state.strong:before,
.input--info .input--ok.isOk:before{
    opacity:1;
    border-color:#fff;
}
.input--info .pw-state.strong{
    transform:scale(1.3);
    animation-name:heartbeat;
    animation-duration:2s;
    animation-iteration-count: infinite;
    animation-timing-function: ease;
}
.input--info .pw-state .bar .bar-label{
    line-height:24px;
    text-align:center;
    color:#fff;
    font-size:1.2em;
    width:100%;
    height:100%;
}
.input--wrapper.hasError input[type="text"],
.input--wrapper.hasError input[type="password"],
.input--wrapper.hasError input[type="email"],
.input--wrapper.hasError input[type="tel"]{
    border-bottom:1px dashed #ee0000;
    border-color:#ee0000;
    color:#ee0000;
}
.input--wrapper.hasError input::-webkit-input-placeholder {
    font-weight:300;
    text-transform:lowercase;
    letter-spacing:2px;
    color:#ee0000;
}

.input--wrapper.hasError input:-moz-placeholder {
    font-weight:300;
    text-transform:lowercase;
    letter-spacing:2px;
    color:#ee0000;
}

.input--wrapper.hasError input::-moz-placeholder {
    font-weight:300;
    text-transform:lowercase;
    letter-spacing:2px;
    color:#ee0000;
}

.input--wrapper.hasError input:-ms-input-placeholder {
    font-weight:300;
    text-transform:lowercase;
    letter-spacing:2px;
    color:#ee0000;
}
.input--error{
    width:100%;
    height:0px;
    overflow:hidden;
    border-radius:0px 2px 2px 2px;
    color:#ee0000;
    font-weight:normal;
    font-size:1.2em;
    margin:0 0;
    opacity:0;
    line-height:16px;
    box-sizing:border-box;
    padding:8px 16px 8px 20px;
    position:relative;
    transition:all .3s;
}
.input--wrapper.hasError .input--error{
    height:32px;
    margin-top:5px;
    opacity:1;
}
.input--error .ui-arrow{
    left:6px;
    transform:scale(.6);
}

.input--wrapper:before{
    position:absolute;
    left:-20px;
    height:2px;
    width:20px;
    border-radius:1px;
    background-color:#e6a200;
    content:"";
    top:50%;
    margin-top:10px;
    transform:translate(0,-50%);
    opacity:0;
    transition:all .3s;
}
.input--wrapper:after{
    height:10px;
    width:10px;
    box-sizing:border-box;
    border-radius:1px;
    border-bottom:2px solid #e6a200;
    border-right:2px solid #e6a200;
    transform:rotate(-45deg);
    content:"";
    position:absolute;
    left:-10px;
    top:50%;
    margin-top:5px;
    opacity:0;
    transition:all .3s;
}
.input--wrapper.hasWarning:before{
    left:-34px;
    opacity:1;
}
.input--wrapper.hasWarning:after{
    left:-24px;
    opacity:1;
}
.input--wrapper.hasWarning input[type="text"],
.input--wrapper.hasWarning input[type="password"],
.input--wrapper.hasWarning input[type="email"],
.input--wrapper.hasWarning input[type="tel"]{
    border-bottom:1px solid #e6a200;
    border-color:#e6a200;
    color:#e6a200;
    background-color:#fffbed;
}
.input--wrapper.hasWarning input::-webkit-input-placeholder {
    font-weight:300;
    text-transform:lowercase;
    letter-spacing:2px;
    color:#e6a200;
}

.input--wrapper.hasWarning input:-moz-placeholder {
    font-weight:300;
    text-transform:lowercase;
    letter-spacing:2px;
    color:#e6a200;
}

.input--wrapper.hasWarning input::-moz-placeholder {
    font-weight:300;
    text-transform:lowercase;
    letter-spacing:2px;
    color:#e6a200;
}

.input--wrapper.hasWarning input:-ms-input-placeholder {
    font-weight:300;
    text-transform:lowercase;
    letter-spacing:2px;
    color:#e6a200;
}



section.signup-about .edge-content,
section.signup-about .edge-content--lower,
section.signup-about .edge-content--lower:before,
section.signup-about .edge-content--upper{
    background-color:#fff;
}
section.signup-about .edge-content--lower:before{
    box-shadow:0px 0px 100px rgba(0,0,0,.8);
    box-shadow:0px 0px 0px rgba(0,0,0,0);
}
section.signup-about .edge-floatup{
    padding-top:60px;
}
section.signup-about h1{
    font-size:6em;
    color:#00e3a6;
}
section.signup-about .columns--2 h2{
    text-align:left;
    font-family:"Playfair Display",sans-serif;
    font-size:2.2em;
    padding:0 0 20px 0;
    width:100%;
    line-height:130%;
}
section.signup-about h5 a{
    color:#14c767;
    text-decoration:none;
}
section.signup-about .button-wrapper{
    padding:20px 0 0 0;
}

@media screen and (max-width:600px){
    .signup .form--wrapper h1{
        font-size:2.4em;
    }
    section.signup-about h1{
        font-size:3.2em;
    }
    section.signup-about .columns--2 p{
        text-align:left;
    }
    .signup .form--wrapper .selected--wrapper,
    .form--group{
        padding-left:26px;
        padding-right:26px;
    }
    .signup .selected--plan a.edit{
        width:80%;
        margin:20px auto 0 auto;
        display:block;
        position:relative;
        box-sizing:border-box;
        left:auto;
        right:auto;
        top:auto;
        transform:none;
        text-align:center;
    }
    .input--wrapper label.show--inline{
        width:100%;
        height:32px;
        box-sizing:border-box;
    }
    .input--wrapper label.show--inline .input--label{
        width:100%;
        padding-top:5px;
        padding-bottom:5px;
        line-height:18px;
        font-size:1.6em;
        font-weight:300;
        letter-spacing:2px;
        position:relative;
        left:32px;
    }
}

