.dvet-contact-form {
    max-width: 760px;
    margin: 0 auto;
}

.dvet-contact-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.dvet-contact-field {
    margin-bottom: 1rem;
}

.dvet-contact-field label {
    display: block;
    margin-bottom: .35rem;
    font-weight: 600;
}

.dvet-contact-field input,
.dvet-contact-field textarea {
    width: 100%;
    box-sizing: border-box;
    padding: .7rem .8rem;
    border: 1px solid #cfcfcf;
    border-radius: 4px;
    background: #fff;
    font: inherit;
}

.dvet-contact-field textarea {
    resize: vertical;
}

.dvet-contact-submit {
    padding: .7rem 1rem;
    border: 0;
    border-radius: 4px;
    cursor: pointer;
    font: inherit;
}

.dvet-contact-submit[disabled] {
    opacity: .65;
    cursor: wait;
}

.dvet-contact-response {
    display: none;
    margin-top: 1rem;
    padding: .8rem 1rem;
    border-radius: 4px;
}

.dvet-contact-response.is-success,
.dvet-contact-response.is-error {
    display: block;
}

.dvet-contact-response.is-success {
    background: #d1e7dd;
    border: 1px solid #badbcc;
    color: #0f5132;
}

.dvet-contact-response.is-error,
.dvet-contact-error,
.dvet-contact-config-error {
    background: #f8d7da;
    border: 1px solid #f5c2c7;
    color: #842029;
    padding: .8rem 1rem;
    border-radius: 4px;
}

.dvet-contact-hp {
    position: absolute !important;
    left: -10000px !important;
    top: auto !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

.dvet-contact-turnstile {
    min-height: 1px;
    margin-bottom: .75rem;
}

@media (max-width: 640px) {
    .dvet-contact-grid {
        grid-template-columns: 1fr;
        gap: 0;
    }
}
