339900339900339900@charset "utf-8";
/* CSS Document */

/* -----

Formular

----- */
.cd-form {
    width: 100%;
    max-width: 37.5rem;
    margin-top: -1.5rem;
}
.cd-form div {
    position: relative;
    margin: .3125rem 0;
}
.cd-form h4, .cd-form .cd-label {
    font-size: 1.1rem;
    color: #333;
    margin-bottom: .625rem;
}
.cd-form .cd-label {
    display: block;
}
.cd-form input, .cd-form textarea, .cd-form select, .cd-form label {
    font-family: opensansregular, sans-serif;
    font-size: 1rem;
    color: #35C817;
}
.cd-form input[type="text"], .cd-form input[type="email"], .cd-form input[type="tel"], .cd-form textarea, .cd-form select, .cd-form legend {
    display: block;
    width: 100%;
}
.cd-form input[type="text"], .cd-form input[type="email"], .cd-form input[type="tel"], .cd-form textarea, .cd-form select {
    padding: .75rem;
    border: 1px solid #cfd9db;
    font-size: .8rem;
    background-color: #ffffff;
    border-radius: .25rem;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.08);
}
.cd-form input[type="text"]:focus, .cd-form input[type="email"]:focus, .cd-form input[type="tel"]:focus, .cd-form textarea:focus, .cd-form select:focus {
    outline: none;
    border-color: #35C813;
    box-shadow: 0 0 .3125rem rgba(44, 151, 222, 0.2);
}
.cd-form textarea {
    min-height: 5rem;
    resize: vertical;
    overflow: auto;
}
.cd-form input[type="submit"] {
    /* button style */
    border: none;
    background: #35C813;
    border-radius: 1px;
    padding: 16px 1.25rem;
    color: #ffffff;
    font-weight: bold;
    float: left;
    cursor: pointer;
}
.no-touch .cd-form input[type="submit"]:hover {
    background: #339900;
}
.cd-form input[type="submit"]:focus {
    outline: none;
    background: #FF7474;
}
.cd-form input[type="submit"]:active {
    transform: scale(0.9);
}
.cd-form [required] {
    background: url("../images/cd-required.svg") no-repeat top right;
}
.cd-form .error-message p {
    background: #e94b35;
    color: #ffffff;
    font-size: .9rem;
    text-align: center;
    border-radius: .25rem;
    padding: .625rem;
}
.cd-form .error {
    border-color: #e94b35 !important;
}

@media only screen and (min-width: 40rem) {
.cd-form h4, .cd-form .cd-label {
    font-size: 1rem;
    margin-bottom: .625rem;
}
.cd-form input[type="text"], .cd-form input[type="email"], .cd-form input[type="tel"], .cd-form textarea, .cd-form select {
    padding: 1.1875rem;
}
}

@media only screen and (max-width: 40rem) {
article {
    padding: 1rem;
}
}
/* -------------

FLoating labels 

------------- */
.js .floating-labels div {
    margin: 1.75rem 0;
}
.js .floating-labels .cd-label {
    position: absolute;
    top: .875rem;
    left: 1px;
    font-size: .9rem;
    cursor: text;
    transition: top 0.2s, left 0.2s, font-size 0.2s;
}
.js .floating-labels .icon .cd-label {
    left: 1.25rem;
}
.js .floating-labels .cd-label.float {
    /* move label out the input field */
    font-size: 1rem;
    top: -1.25rem;
    left: 0 !important;
}

@media only screen and (min-width: 40rem) {
.js .floating-labels legend + div {
    /* reduce margin-top for first form element after the legend */
    margin-top: 1rem;
}
.js .floating-labels .cd-label {
    top: 1.25rem;
}
}
