.regform-title {
    font-family: "Open Sans", Arial, Helvetica, sans-serif;
    font-size: 23px;
    font-weight: 600;
    line-height: 1.3;
    text-transform: none;
    text-align: center;
    margin: 0 0 16px;
    color: #464648; /* children landings may override this color with brand color */
}
@media only screen and (max-width: 40em) {
  .regform-title {
    font-size: 18px;
  }
}

label,select,input {
    color:#3e3e3e;
    font-weight:600;
    font-size:14px;
}

select {
    padding-top:5px;
    color:#777;
    -moz-appearance: none;
}

::-webkit-input-placeholder,::-moz-placeholder,:-ms-input-placeholder,input:-moz-placeholder {
    color:#777;
    font-weight:400;
}

.standard-link {
    color:#45a2db;
    font-size:12px;
    text-decoration:underline;
}

.spacer {
    content:".";
    height:0;
    visibility:hidden;
}

.simple-form label {
    font-weight:600;
    margin-bottom:5px;
}

.simple-form select,.simple-form input[type=text],.simple-form input[type=email],.simple-form input[type=password] {
    border-radius:5px;
    background-color:#fff;
    padding-left:5px;
}

.simple-form button,
.show-forgottendetails button,
.show-suspendedaccount button,
.login-submuit {
    background-color:#78cd00;
    border-radius:5px;
    width:100%;
    text-transform:uppercase;
    font-size:18px;
    text-shadow:2px 2px #76bd43;
    font-weight:700;
    height:48px;
    padding:0;
    box-shadow:inset 0 -4px 0 0 #76bd43;
}

.main-block-greybg .button {
    background-color:#78cd00;
    border-radius:5px;
    width:100%;
    text-transform:uppercase;
    font-size:18px;
    text-shadow:2px 2px #76bd43;
    font-weight:700;
    padding: 11px 0;
    box-shadow:inset 0 -4px 0 0 #76bd43;
}

.main-block-greybg .button:last-child {
    margin-bottom: 0;
}

.main-block-greybg .button a, .main-block-greybg .button a:hover {
    color:#fff;
    text-decoration:none;
}

.api-messages-final a {
    color:#fff;
    text-decoration:underline;
}

.api-messages-final a:hover {
    color:#fff;
    text-decoration:none;
}

.show-forgottendetails button,.login-submuit {
    margin:10px 0;
    padding:11px;
}

.simple-form button:hover,
.show-suspendedaccount button:hover,
.main-block-greybg .button:hover,
.login-submuit:hover {
    background-color:#76bd43;
    box-shadow:none;
}

.simple-form button:active,
.show-suspendedaccount button:active,
.main-block-greybg .button:active,
.login-submuit:active {
    background-color:#76bd43;
    box-shadow:inset 0 2px 3px 0 #5f9837;
}

.title-forgottendetails {
    font-size:13px;
    font-weight:600;
    text-align:center;
    margin-bottom:10px;
    margin-top: 0;
}

.showing-forgottendetails .main-block {
    padding-bottom:.5em;
}

p.text-suspendedaccount {
    font-size: 14px;
    line-height: 1.5;
    font-weight: 600;
    color: #3e3e3e;
    text-align: center;
    margin-bottom: 10px;
    margin-top: 0;
    text-shadow: none;
}

.standard-regform .field,.standard-regform .field:hover,.standard-regform .field:focus {
    display:inline-block;
    -moz-box-sizing:border-box;
    box-sizing:border-box;
    height:34px;
    border:1px solid #c4c7cc;
    border-radius:2px;
    vertical-align:middle;
    font-size:.8rem;
    color:#000;
    box-shadow:none;
    padding:8px 6px;
}

.standard-regform input[type=text],.standard-regform input[type=password] {
    background:#fff;
    margin:0 0 1rem;
}

.standard-regform .has-error {
    border-color:red;
}

.standard-regform label {
    color:#222;
    font-size:.79rem;
    font-weight:700;
}

.standard-regform input[type=submit],.showRegForm-button,.showLoginForm-button {
    width:100%;
    height:35px;
    background:#00bb23;
    border:1px solid #00bb23;
    cursor:pointer;
    border-radius:0;
    font-size:16px;
    font-weight:400;
    margin-top:10px;
    opacity:1;
    color:#fff;
    padding:6px;
}

.standard-fbform input[type=submit] {
    width:100%;
    height:35px;
    background:#2c4892;
    border:1px solid #2c4892;
    cursor:pointer;
    border-radius:0;
    font-size:16px;
    font-weight:400;
    margin-top:10px;
    opacity:1;
    color:#fff;
    padding:6px;
}

.standard-fbform input[type=submit]:hover {
    opacity:0.9;
}

#bday,#bmonth,#byear {
    padding-left:5px;
}

#bmonth * {
    text-align:left;
}

.simple-form .has-error .field,.has-error input[type=text]:focus,.has-error input[type=text],.has-error input[type=email]:focus,.has-error input[type=email],.has-error input[type=password]:focus,.has-error input[type=password] {
    border-radius:0 0 5px 5px;
    border-color:#de5656;
}

.has-error .error-message {
    display:block;
    color:#FFF;
    background-color:#de5656;
    z-index:1000;
    border-radius:5px 5px 0 0;
    font-size:12px;
    font-weight:700;
    width:100%;
    padding:4px 8px;
}

.api-messages-final {
    display:block;
    color:#FFF;
    background-color:#de5656;
    z-index:1000;
    border-radius:5px;
    font-size:12px;
    font-weight:700;
    width:100%;
    margin:0 0 10px;
    padding:4px 8px;
}

.birthday-field .error-message, .location-field .error-message {
    margin-bottom:3px;
    border-radius:5px;
}

.remember_me_container a {
    float:right;
    line-height:27px;
}

.terms-wording {
    font-size:10px;
    text-align:center;
    margin:10px 10px 0;
}

.terms-wording a,
.privacy-check-before-label a {
    text-decoration:underline;
    color: #222;
}

.regform-container button .api-loader,
.simple-form button .api-loader {
    position:absolute;
    top:9px;
    right:14px;
}

select *,select.select-black {
    color:#3e3e3e;
}

.standard-link:hover,.terms-wording a:hover,.privacy-check-before-label a:hover {
    text-decoration:none;
}

.standard-regform input[type=submit]:hover,.standard-regform input[type=submit]:active,.standard-fbform input[type=submit]:active {
    opacity:0.8;
}

.has-error,.regform-container button {
    position:relative;
}

.has-error label{
    display:none;
}

form {
    margin: 0;
}

body[data-useragent*=Mac] .terms-wording{
    letter-spacing:0px;
}

body[data-useragent*=Mac] .cookieText{
    letter-spacing:0px;
}

.optin-partner-wrapper,
.terms-check-wrapper,
.privacy-check-wrapper {
    margin:5px 0 10px 0;
}

.optin-partner-wrapper input[type="checkbox"],
.terms-check-wrapper input[type="checkbox"],
.privacy-check-wrapper input[type="checkbox"] {
    margin-top:2px;
}

.optin-partner-wrapper input[type="checkbox"] + label,
.optin-partner-wrapper input[type="hidden"] + label,
.terms-check-wrapper input[type="checkbox"] + label,
.privacy-check-wrapper input[type="checkbox"] + label {
    line-height:16px;
    margin:0;
}

.terms-check-wrapper label a,
.privacy-check-wrapper label a,
.optin-partner-wrapper label a {
    color: #222;
}
.terms-check-wrapper label a:hover,
.privacy-check-wrapper label a:hover,
.optin-partner-wrapper label a:hover {
    text-decoration: none;
}

.terms-check-wrapper.has-error .error-message,
.privacy-check-wrapper.has-error .error-message {
    border-radius: 5px;
    margin-bottom: 5px;
}

.privacy-check-before-label {
    font-size: 10px;
    font-weight: normal;
    margin-bottom: 5px;
    color: #222222;
}

/* Google Places API Autocomplete */
.geo-field {
    position: relative;
    margin-bottom: 1rem;
}
.geo-field input {
    margin: 0;
}
.geo-field input.has-dropdown {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.google-places-api-autocomplete {
    position: absolute;
    z-index: 1;
    background: white;
    color: rgba(0, 0, 0, 0.60);
    font-weight: 600;
    border-radius: 0 0 5px 5px;
    border-bottom: 1px solid #999;
    border-left: 1px solid #999;
    border-right: 1px solid #999;
    box-shadow: 0 0 5px #999;
}

.google-places-api-autocomplete-list {
    list-style-type: none;
    margin: 0;
    padding: 0;
    padding-bottom: 20px;
    background-image: url(https://iliusstx-a.akamaihd.net/bundles/iliusunlogged/components/regform-3steps-geo-psc/img/powered-by-google-on-white3_hdpi.png);
    background-repeat: no-repeat;
    background-position: 100% 100%;
    background-size: 120px 14px;
}
.google-places-api-autocomplete-list li {
    padding: 5px 10px;
    border-bottom: 1px solid #999;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}
.google-places-api-autocomplete-list li:hover,
.google-places-api-autocomplete-list li.is-active {
    color: rgba(255, 255, 255, 0.95);
    background-color: #597AB7;
    cursor: pointer;
}
.google-places-api-autocomplete-item-term:nth-child(2) {
    color: rgba(0, 0, 0, 0.75);
    font-weight: 700;
}
.google-places-api-autocomplete-list li:hover .google-places-api-autocomplete-item-term:nth-child(2),
.google-places-api-autocomplete-list li.is-active .google-places-api-autocomplete-item-term:nth-child(2) {
    color: white;
}

.map-marker {
    display: inline-block;
    opacity: .3;
    width: 23px;
    height: 20px;
    vertical-align: text-bottom;
    padding-right: 10px;
    background-image: url(https://iliusstx-a.akamaihd.net/bundles/iliusunlogged/components/regform-3steps-geo-psc/img/map-marker.svg);
    background-repeat: no-repeat;
}

.password-field {
    position: relative;
}

label.pwd-strength-label-weak {
    color: #de5656;
    font-weight: 900;
}
label.pwd-strength-label-medium {
    color: #eb7d06;
    font-weight: 900;
}
label.pwd-strength-label-strong {
    color: #31920f;
    font-weight: 900;
}

.pwd-strength-checker-info {
    display: none; /* hidden by default */
}

.pwd-strength-checker-message {
    display: none; /* hidden by default */
    font-size: 13px;
    font-weight: 600;
    line-height: 1.1;
    margin-top: -10px;
}
.pwd-strength-checker-message ul {
    margin-top: 0;
    padding: 0;
    list-style-position: inside;
    font-weight: normal;
}

.pwd-strength-checker-message.pwd-strength-checker-message-display {
    display: block;
}

@media only screen and (min-width: 64em) {
    #password {
        display: inline-block;
        width: 90%;
    }
    .has-error.password-field .error-message {
        width: 90%;
    }
    .pwd-strength-checker-info {
        display: inline-block;
        width: 30px;
        height: 30px;
        font-size: 16px;
        line-height: 30px;
        font-weight: 600;
        text-align: center;
        vertical-align: middle;
        margin-left: 4px;
        border-radius: 15px;
        border: 1px solid #999;
        color: #999;
        cursor: pointer;
    }
    .pwd-strength-checker-info:hover {
        background: #999;
        color: #fff;
    }
    .pwd-strength-checker-message {
        position: absolute;
        left: 100%;
        top: 1.5em;
        background-color: #fff;
        margin-left: 1.5em;
        margin-top: 0;
        padding: 1em;
        border-radius: 5px;
        line-height: 1.5;
        width: 280px;
    }
    .pwd-strength-checker-message:after {
    	right: 100%;
    	top: 26px;
    	border: solid transparent;
    	content: " ";
    	height: 0;
    	width: 0;
    	position: absolute;
    	pointer-events: none;
    	border-color: rgba(255, 255, 255, 0);
    	border-right-color: #fff;
    	border-width: 9px;
    	margin-top: -9px;
    }
    .pwd-strength-checker-message ul {
        margin-bottom: 0;
    }
    .pwd-strength-checker-message.pwd-strength-checker-message-display {
        display: none;
    }
    .pwd-strength-checker-info:hover ~ .pwd-strength-checker-message.pwd-strength-checker-message-display {
        display: block;
    }
}
@media only screen and (min-width: 79em) {
    .pwd-strength-checker-message.pwd-strength-checker-message-display {
        width: 400px;
    }
}
