/*** Forms CSS ***/

.wpcf7-spinner {
    display: none !important;
}

.submit-container {
}

.wpcf7 form .wpcf7-response-output {
    margin: 0;
    margin-bottom: 20px;
}

.wpcf7-not-valid-tip {
    margin-top: 5px;
}


input:focus,
textarea:focus,
select:focus {
    outline: none!important;
}



form label,
input[type="email"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="text"],
input[type="url"],
textarea,
select {
    width: 100%;
    max-width: unset;
}

select {
    -moz-appearance: none;
    -webkit-appearance: none;
}
select::-ms-expand {
    display: none;
}
select {
    background-image: url('assets/select/select_arrow.svg');
    background-repeat: no-repeat;
    background-position: center right;
}


::-webkit-input-placeholder, /* Chrome/Opera/Safari */
::-moz-placeholder, /* Firefox 19+ */
:-ms-input-placeholder, /* Firefox 18- */
:-moz-placeholder {
    color: var(--grey);
    font-family: nocturne-serif-lights, serif;
}

:focus::-webkit-input-placeholder, /* Chrome/Opera/Safari */
:focus::-moz-placeholder, /* Firefox 19+ */
:focus:-ms-input-placeholder, /* Firefox 18- */
:focus:-moz-placeholder {
    color: var(--salamander);
}


input[type="email"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="text"],
input[type="url"],
textarea,
select {
    background-color: transparent;
    margin-top: 8px;
    border-color: var(--grey);
    color: var(--grey);
    border-width: 1px;
    border-style: solid;
    padding: 10px;
    padding-top: 5px;
    padding-left: 0;
    border-top: none;
    border-left: none;
    border-right: none;
    font-family: nocturne-serif-lights, serif;
    font-size: 16px;
    line-height: 24px;
}


@media(max-width: 1199.98px) {
    input[type="email"],
    input[type="number"],
    input[type="password"],
    input[type="search"],
    input[type="tel"],
    input[type="text"],
    input[type="url"],
    textarea,
    select {

    }
}

@media(max-width: 575px) {
    input[type="email"],
    input[type="number"],
    input[type="password"],
    input[type="search"],
    input[type="tel"],
    input[type="text"],
    input[type="url"],
    textarea,
    select {

    }
}


/*** Focus Styles ***/

input[type="email"]:focus,
input[type="number"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="text"]:focus,
input[type="url"]:focus,
textarea:focus {
    border-color: var(--salamander);
    color: var(--salamander);
}






/*** Form Labels ***/

form label {
    font-weight: 300;
    font-family: warnock-pro, serif;
    font-size: 13px;
    margin-top: 35px;
    color: var(--tumbleweed);
}

form span.error + label {
    margin-top: 15px !important;
}

@media(max-width: 1199.98px) {
    form label {

    }
}



/*** Checkboxes and Radio Buttons - WPCF7 Custom Overrides ***/

.wpcf7-checkbox,
.wpcf7-radio,
.wpcf7-acceptance {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.wpcf7-checkbox .wpcf7-list-item,
.wpcf7-radio .wpcf7-list-item,
.wpcf7-acceptance .wpcf7-list-item {
    margin-left: 0px;
}
.wpcf7-checkbox .wpcf7-list-item:first-of-type,
.wpcf7-radio .wpcf7-list-item:first-of-type,
.wpcf7-acceptance .wpcf7-list-item:first-of-type {
    margin: 0;
}
.wpcf7-checkbox label,
.wpcf7-radio label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
}
.wpcf7-acceptance label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    position: relative;
}

.wpcf7-checkbox .wpcf7-list-item input,
.wpcf7-radio .wpcf7-list-item input,
.wpcf7-acceptance .wpcf7-list-item input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}
.wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label::before,
.wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label::before,
.wpcf7-acceptance .wpcf7-list-item .wpcf7-list-item-label::before {
    display: inline-block;
    left: 0;
    opacity: 1;
    position: absolute;
    transition: ease all 0.2s;
}
.wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label::before,
.wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label::before {
    top: 50%;
    transform: translateY(-50%);
}
.wpcf7-acceptance .wpcf7-list-item .wpcf7-list-item-label::before {
    top: 5px;
}

.wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label::before,
.wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label::before,
.wpcf7-acceptance .wpcf7-list-item .wpcf7-list-item-label::before,

.wpcf7-checkbox .wpcf7-list-item:hover .wpcf7-list-item-label::before,
.wpcf7-radio .wpcf7-list-item:hover .wpcf7-list-item-label::before,
.wpcf7-acceptance .wpcf7-list-item:hover .wpcf7-list-item-label::before,

.wpcf7-checkbox input:checked ~ .wpcf7-list-item-label::before,
.wpcf7-radio input:checked ~ .wpcf7-list-item-label::before,
.wpcf7-acceptance input:checked ~ .wpcf7-list-item-label::before {
    background-size: 98%;
    background-position: center;
    background-repeat: no-repeat;
}

.wpcf7-checkbox .wpcf7-list-item-label,
.wpcf7-radio .wpcf7-list-item-label,
.wpcf7-acceptance .wpcf7-list-item-label {
    cursor: pointer;
    padding-left: 35px;
    margin-right: 30px;
    font-weight: 400;
    font-size: 16px;
    margin-bottom: -6px;
}
.wpcf7-checkbox .wpcf7-list-item input,
.wpcf7-radio .wpcf7-list-item input,
.wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label::before,
.wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label::before {
    height: 24px;
    width: 24px;
}

.wpcf7-acceptance .wpcf7-list-item input,
.wpcf7-acceptance .wpcf7-list-item .wpcf7-list-item-label::before {
    height: 24px;
    width: 24px;
}



@media(max-width: 1199.98px) {
    .wpcf7-checkbox .wpcf7-list-item input,
    .wpcf7-radio .wpcf7-list-item input,
    .wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label::before,
    .wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label::before {
        height: 18px;
        width: 18px;
    }

    .wpcf7-acceptance .wpcf7-list-item input,
    .wpcf7-acceptance .wpcf7-list-item .wpcf7-list-item-label::before {
        height: 18px;
        width: 18px;
    }

    .wpcf7-checkbox .wpcf7-list-item-label,
    .wpcf7-radio .wpcf7-list-item-label,
    .wpcf7-acceptance .wpcf7-list-item-label {
        padding-left: 28px;
        margin-right: 25px;
        font-size: 15px;
    }

    .wpcf7-checkbox label,
    .wpcf7-radio label,
    .wpcf7-acceptance label {
        margin-top: 8px;
    }
}

@media(max-width: 575px) {
    .wpcf7-checkbox .wpcf7-list-item input,
    .wpcf7-radio .wpcf7-list-item input,
    .wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label::before,
    .wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label::before {
        height: 16px;
        width: 16px;
    }

    .wpcf7-acceptance .wpcf7-list-item input,
    .wpcf7-acceptance .wpcf7-list-item .wpcf7-list-item-label::before {
        height: 16px;
        width: 16px;
    }

    .wpcf7-checkbox .wpcf7-list-item-label,
    .wpcf7-radio .wpcf7-list-item-label,
    .wpcf7-acceptance .wpcf7-list-item-label {
        padding-left: 23px;
        margin-right: 20px;
        font-size: 14px;
    }
}



/* Checkbox - Unchecked */
.wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label::before {
    background-image: url('assets/checkbox/deselected.svg');
}
/* Checkbox - Checked */
.wpcf7-checkbox input:checked ~ .wpcf7-list-item-label::before {
    background-image: url('assets/checkbox/selected.svg');
}


/* Acceptance Checkbox - Unchecked */
.wpcf7-acceptance .wpcf7-list-item .wpcf7-list-item-label::before {
    background-image: url('assets/checkbox/deselected.svg');
    top: 2px;
}
/* Acceptance Checkbox - Checked */
.wpcf7-acceptance input:checked ~ .wpcf7-list-item-label::before {
    background-image: url('assets/checkbox/selected.svg');
}


/* Radio - Unchecked */
.wpcf7-radio .wpcf7-list-item .wpcf7-list-item-label::before {
    background-image: url('assets/radio/deselected.svg');
}
/* Radio - Checked */
.wpcf7-radio input:checked ~ .wpcf7-list-item-label::before {
    background-image: url('assets/radio/selected.svg');
}




span.error {
    color: #fb4c4c;
    margin-top: 20px;
    display: inline-block;
}
span.success {

}
span.success:empty {

}

/* hide arrows for input[type="number"] */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {

}

/* Firefox */
input[type=number] {

}

/*** CF7 Specific ***/

.wpcf7 form .wpcf7-response-output {
    margin-top: 30px;
    border-width: 1px;
    border-radius: 5px;
    color: white;
    line-height: 1;
    padding: 16px;
    padding-bottom: 15px;
    width: max-content;
    width: fit-content;
    width: 100%;
    text-align: center;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
    border-color: #b1b0b0;
    background-color: #b1b0b0;
}

.wpcf7 form.sent .wpcf7-response-output {
    background-color: #77c277;
    border-color: #77c277;
}

/*** Valuation Form Messages ***/
p.val-form-submit {
    background-color: #77c277;
    border-color: #77c277;

    border-width: 1px;
    border-radius: 5px;
    color: white;
    line-height: 1;
    padding: 16px;
    padding-bottom: 15px;
    width: max-content;
    width: fit-content;
    width: 100%;
    text-align: center;
    margin-bottom: 50px;
}