::-webkit-input-placeholder {
    color: #444;
    opacity: 0.45;
}

:-moz-placeholder {
    color: #444;
    opacity: 0.45;
}

::-moz-placeholder {
    color: #444;
    opacity: 0.45;
}

:-ms-input-placeholder {
    color: #444;
    opacity: 0.45;
}

.icn {
    display: inline-block;
    width: 1em;
    height: 1em;
    stroke-width: 0;
    stroke: currentColor;
    fill: currentColor;
}


/* BUTTONS */

a.btn,
.btn {
    background: #02a0e3;
    display: inline-block;
    padding: 0.9em 1em;
    cursor: pointer;
    color: #fff;
    border: none;
    border-radius: 5px;
    -webkit-appearance: none;
    text-decoration: none;
    text-transform: uppercase;
    font-size: 0.875rem;
}

.btn:hover,
a.btn:hover {
    opacity: 0.85;
}
.btn_accent,
a.btn_accent {
    background: var(--accent);
    color: var(--accentInverse);
}

.btn--middle {
    padding: 0.5em 1.25em;
    font-size: 1.3em;
}

.btn_block,
a.btn_block {
    display: block;
    width: 100%;
    text-align: center;
}



/* FORM */

input[type="text"],
input[type="email"],
input[type="number"],
input[type="password"],
input[type="tel"],
select {
    width: 100%;
    height: 2.5rem;
    padding: 0 1em;
    border: solid 1px #ddd;
    outline: none;
}

textarea {
    width: 100%;
    height: 6em;
    padding: 1em;
    border: solid 1px #ddd;
    outline: none;
    font-family: "Open Sans", Arial, sans-serif;
}

.form__success,
.form__error {
    text-align: center;
    padding: 1em;
    font-size: 1.5em;
    display: none;
}

.form__success {
    color: #00aa00;
}

.form__error {
    color: #ee0000;
}