/*
    Document   : kl-classRegistration-front
    Created on : 22-Aug-2016, 1:44:30 PM
    Author     : Karen Laansoo
    Description:
        front end styling of the registration form.
*/
@font-face {
  font-family: 'regicon';
  src:  url('fonts/regicon.eot?djr9gn');
  src:  url('fonts/regicon.eot?djr9gn#iefix') format('embedded-opentype'),
    url('fonts/regicon.ttf?djr9gn') format('truetype'),
    url('fonts/regicon.woff?djr9gn') format('woff'),
    url('fonts/regicon.svg?djr9gn#regicon') format('svg');
  font-weight: normal;
  font-style: normal;
}

[class^="regicon-"], [class*=" regicon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'regicon' !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;
}

.regicon-payment-yes:before {
  content: "\e900";
}
.regicon-payment-no:before {
  content: "\e901";
}
.regicon-info:before {
  content: "\e902";
}
.regicon-form-submitted:before {
  content: "\f04d";
}
.regicon-user-add:before {
  content: "\e903";
}
.regicon-user-remove:before {
  content: "\e904";
}
.regicon-user-check:before {
  content: "\e905";
}
.klclass-reg-form{
    margin-top: 40px;
    margin-top: 2.5rem;
}
.klclass-reg-form small{
    display:block;
}
.klclass-reg-form input.form-field{
    height: 50px;
    height: 3.1rem;
}
.klclass-reg-form .select-wrap {
    position: relative;
    display: inline-block;
    background: #f5f5f5;
    border: 1px solid #c1c1c1;
    padding: 0;
    width: 100%;
    max-width: 400px;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    overflow: hidden;
    vertical-align: middle;
}

.klclass-reg-form select {
    position: relative;
    background: transparent;
    width: 100%;
    padding: 10px 30px 10px 10px;
    line-height: 1;
    font-size: 14px;
    font-size: 0.9rem;
    border: 0;
    height: 45px;
    -webkit-appearance: none;
    -webkit-font-smoothing: antialiased;
    cursor: pointer;
    z-index: 1;
}

.klclass-reg-form .select-wrap i.fa {
    position: absolute;
    right: 15px;
    top: 16px;
    width: auto;
    clear: none;
    font-size: 14px;
    font-size: 0.9rem;
    line-height: 1;
    color: #c1c1c1;
    z-index: 1;
}

@-moz-document url-prefix() {
   .klclass-reg-form select{
        -webkit-appearance: initial;
    }
    .klclass-reg-form .select-wrap i.fa {
        display: none;
    }
}
.klclass-reg-form .select-wrap select::-ms-expand{
    display:none;
}

.klclass-reg-form .select-wrap:hover {
    background: #FFF;
}
.klclass-reg-form div.info{
    margin-bottom: 40px;
    margin-bottom: 2.4rem;
}
.klclass-reg-form div.info p, div.klclass-reg.info{
    border-left: 4px solid #DC3043;
    padding: 10px;
    padding: 0.63rem;
    background-color: #f8f8f8;
}
.klclass-reg.info.error {
	background-color: #f9d9dd;
	border: 1px solid  #DC3043;
	padding: 20px 10px;
}
.klclass-reg.info.error ul {
	margin-bottom: 0;
}
div.klclass-reg.info{
    border-left: none;
    margin-top: 40px;
    margin-top: 2.4rem;
    margin-bottom: 40px;
    margin-bottom: 2.4rem;
    position:relative;
}
div.klclass-reg.info i{
    font-size: 40px;
    font-size: 2.4rem;
    color: #4a762b;
    position: absolute;
    vertical-align: top;
    left: 20px;
    left: 1.23rem;
}
div.klclass-reg.info.error i{
    color: #DC3043;
}
div.klclass-reg.info p{
    margin-top: 20px;
    margin-top: 1.23rem;
}
div.klclass-reg.info span{
    font-weight:bold;
    margin-left: 60px;
    margin-left: 4.6rem;
    display:block;
}
.klclass-reg-form div.info p.info-description{
    border-left: 4px solid #2ea2cc;
}
.klclass-reg-form div.info p.info-waitlist{
    border-left: 4px solid #ccaf0b;
    background-color: #f0f0b8;
}
.klclass-reg-form .verified{
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-left: 10px;
    margin-left: 0.63rem;
    vertical-align: middle;
}
.waiting, .valid, .in-valid{
    background: url(../img/waiting.gif) no-repeat;
    -webkit-background-size: 20px 20px;
    background-size: 20px 20px;
    display: inline-block;
    visibility: hidden;
    vertical-align: middle;
    opacity: 0.7;
    filter: alpha(opacity=70);
    width: 20px;
    height: 20px;
    margin: 4px 10px 0;
}
.valid{
    background: url(../img/checkmark.png) no-repeat;
}
.in-valid{
    background: url(../img/warning.png) no-repeat;
}
.waiting.is-active, .valid.is-active, .in-valid.is-active{
	visibility: visible;
}
.klclass-reg-form.login{
    max-width: 400px;
    border: 1px solid #e2e2e2;
    border: 0.063rem solid #e2e2e2;
    padding: 10px;
    padding: 0.63rem;
}
.klclass-login-wrapper{
    background-color: #f8f8f8;
    padding: 20px 20px 2px 20px;
    padding: 1.83rem 1.83rem 0.183rem 1.83rem;
}
.klclass-login-wrapper input[type="text"], .klclass-login-wrapper input[type="password"], .klclass-login-wrapper input[type="email"]{
    background-color: #ffffff;
}
/**
=============
Info Widget
=============
**/
.kl-course-info .course-info-item, .kl-next-class .course-info-item{
    padding: 15px 8px;
    padding: 0.95rem 0.5rem;
    border-top: 1px solid #ccc;
}
.kl-next-class .course-info-item.all{
    text-align:right;
}
.kl-course-info .course-info-item.one, .kl-next-class .course-info-item.one{
    border-top: 0;
}
.kl-course-info .course-info-item strong{
    width: 100%;
    display:block;
}
.kl-next-class .course-info-item{
    position:relative;
}
#maincontentcontainer .kl-next-class .button.alt.kcal-ics{
    width: 25px;
    height: 25px;
    border-radius: 25px;
    text-align: center;
    padding: 0;
    position: absolute;
    right: 0.5rem;
    top: 0;
    left:inherit;
}
#maincontentcontainer .kl-next-class .button.alt .icon-add{
    font-size: 12px;
    font-size: 0.75rem;
    margin-left: 1px;
    margin-left: 0.063rem;
    margin-top: 1px;
    margin-top: 0.063rem;
    line-height: 2.1;
}