﻿.form-wrapper { margin-bottom: 40px; padding-inline: var(--global-padding-inline); }
.form-wrapper * { box-sizing: border-box; }
.form-wrapper input[class*="span"], .form-wrapper textarea[class*="span"] { float: none; }
.form-wrapper .control-group { margin-bottom: 40px; }
.form-wrapper .control-group > label:not(.error) { margin-bottom: 15px; display: block; cursor: pointer; font-size: 1.3rem; font-weight: 500; }
.form-wrapper .control-group > label.checkbox-label { display: inline-block; margin-bottom: 0; margin-left: 4px; }
.form-wrapper .control-group label[generated="true"].error { color: #F00; margin-top: 10px; display: block; }
.form-wrapper .control-group label[generated="true"].valid { display: none !important; }
.form-wrapper .control-group label.error { display: block; margin-top: 10px; color: #F00; }
.form-wrapper .control-group select,
.form-wrapper .control-group input,
.form-wrapper .control-group textarea { padding-inline: 10px; }
.form-wrapper .control-group input, .form-wrapper .control-group select { height: 50px; }
.form-wrapper .control-group input, .form-wrapper .control-group select, .form-wrapper .control-group textarea { font-size: 1.05rem; outline: none; width: 100%; border: 0; border-bottom: solid 1px #000; transition: 0.3s linear; }
.form-wrapper .control-group input[disabled] { cursor: not-allowed; }
.form-wrapper .control-group select { -webkit-appearance: textfield; -moz-appearance: textfield; height: 50px; cursor: pointer; }
.form-wrapper .control-group textarea { resize: vertical; padding: 10px; }
/* Checkbox */
.form-wrapper .control-group .checkbox-text { display: block; margin-bottom: 10px; line-height: 1.4em; }
.form-wrapper .control-group .checkbox-text a { text-decoration: underline; font-weight: 500; }
.form-wrapper .checkbox-wrapper { display: flex; align-items: center; }
.form-wrapper .checkbox-wrapper > input[type="checkbox"] { width: 16px; height: 16px; margin: 0; margin-right: 2px; }
.form-wrapper .checkbox-wrapper > .checkbox-label { display: inline-block; margin-left: 5px; cursor: pointer; font-weight: 500; }
.form-wrapper .control-group.control-group-privacy { font-size: 0.9rem; }
/* reCAPTCHA */
.form-wrapper .captcha-cnt { margin-top: 5px; }
.form-wrapper .captcha-cnt .g-recaptcha > div { width: auto !important; text-align: center !important; }
/* reCAPTCHA.com */
.form-wrapper .captcha-com-cnt { text-align: center; }
.form-wrapper .captcha-com-cnt > div { display: inline-block; }
.form-wrapper .captcha-com-cnt > div > div { text-align: center; }
.form-wrapper .captcha-com-cnt > div > div > div { display: inline-block; }
.form-wrapper .captcha-com-cnt > div > label { margin-bottom: 10px; display: block; }
.form-wrapper .captcha-com-cnt > div > input { width: calc(100% - 20px); margin-top: 8px; height: 30px; border: 1px solid #BBB; padding: 3px 10px; }
/* button */
.form-wrapper .contactform-buttons-area { text-align: center; }
.form-wrapper .contactform-buttons-area > input { margin-inline: auto; color: #FFF; min-width: 140px; }
/* file */
.form-wrapper input[type="file"] { width: 0.1px; height: 0.1px; opacity: 0; overflow: hidden; position: absolute; z-index: -1; }
/*.form-wrapper input[type="file"] + label { max-width: 80%; font-size: 1.05rem; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; cursor: pointer; display: inline-block; overflow: hidden; padding: 0.625rem 1.25rem;*/ /* 10px 20px }*/
.form-wrapper input[type="file"] :focus + label,
.form-wrapper input[type="file"] .has-focus + label { outline: 1px dotted var(--primary-color); outline: -webkit-focus-ring-color auto 5px; }
.form-wrapper input[type="file"] + label svg { width: 1em; height: 1em; vertical-align: middle; fill: currentColor; margin-top: -0.25em; margin-right: 0.25em; }
.form-wrapper input[type="file"] + label { color: #FFF; /* background-color: var(--primary-color);*/; margin-top: 0; }
/* honeypot */
.form-wrapper .wrapper-form-field-type-16, .form-wrapper .wrapper-form-field-type-17 { position: absolute; left: -5000px; }

/*** MEDIA QUERY ***/
@media (max-width:1023px) {
    .form-wrapper .control-group > label:not(.error) { font-size: 1rem; line-height: 1.5rem; }
}

@media (max-width:767px) {
    .form-wrapper .control-group > label:not(.error) { font-size: 1.3rem; line-height: 1.8rem; }
    .form-wrapper .control-group input:not([type="file"]):not([type="checkbox"]), .form-wrapper .control-group textarea, .form-wrapper .control-group select { width: 100%; }
    .form-wrapper .contactform-buttons-area { margin-top: 30px; }
}
