.zynovo-contact .z-contact-main {
    padding: 92px 0;
}

.zynovo-contact .z-contact-main > .wpb_column:first-child {
    padding-right: 18px;
}

.zynovo-contact .z-contact-main > .wpb_column:last-child {
    padding-left: 18px;
}

.zynovo-contact .z-contact-form > .vc_column-inner {
    padding: 30px !important;
    border: 1px solid var(--z-line);
    border-radius: 22px;
    background: #ffffff;
}

.zynovo-contact .z-contact-form {
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
}

/* Keep the gap when HubSpot replaces the form with its success message.
   Override the company-page/WPBakery last-child margin reset. */
.zynovo-contact .vc_row.z-contact-main .z-contact-form .wpb_text_column h2 {
    margin: 0 0 24px;
    font: 650 34px/1.1 Inter, ui-sans-serif, sans-serif;
    text-transform: none;
}

.zynovo-contact .z-contact-form .hbspt-form,
.zynovo-contact .z-contact-form .hs-form {
    width: 100% !important;
}

.zynovo-contact .z-contact-form .hs-form fieldset {
    max-width: none !important;
}

.zynovo-contact .z-contact-form .hs-form .hs-form-field {
    margin-bottom: 16px !important;
}

.zynovo-contact .z-contact-form .hs-form label {
    color: #343842 !important;
    font: 650 13px/1.45 Inter, ui-sans-serif, sans-serif !important;
}

.zynovo-contact .z-contact-form .hs-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.zynovo-contact .z-contact-form .hs-form select,
.zynovo-contact .z-contact-form .hs-form textarea {
    width: 100% !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: 13px 14px !important;
    border: 1px solid #d9dde4 !important;
    border-radius: 12px !important;
    outline: 0 !important;
    color: var(--z-ink) !important;
    background: #ffffff !important;
    box-shadow: none !important;
    font: 400 15px/1.45 Inter, ui-sans-serif, sans-serif !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.zynovo-contact .z-contact-form .hs-form textarea {
    min-height: 130px !important;
    resize: vertical;
}

.zynovo-contact .z-contact-form .hs-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):focus,
.zynovo-contact .z-contact-form .hs-form select:focus,
.zynovo-contact .z-contact-form .hs-form textarea:focus {
    border-color: var(--z-violet) !important;
    box-shadow: 0 0 0 3px rgba(109, 93, 252, 0.12) !important;
}

.zynovo-contact .z-contact-form .hs-form input::placeholder,
.zynovo-contact .z-contact-form .hs-form textarea::placeholder {
    color: #98a0ad !important;
    opacity: 1 !important;
}

.zynovo-contact .z-contact-form .hs-form .hs-button,
.zynovo-contact .z-contact-form .hs-form input[type="submit"] {
    width: auto !important;
    min-height: 46px !important;
    margin: 12px 0 0 !important;
    padding: 12px 22px !important;
    border: 1px solid var(--z-ink) !important;
    border-radius: 999px !important;
    color: #ffffff !important;
    background: var(--z-ink) !important;
    box-shadow: none !important;
    font: 750 14px/1.4 Inter, ui-sans-serif, sans-serif !important;
    text-transform: none !important;
    cursor: pointer !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.zynovo-contact .z-contact-form .hs-form .hs-button:hover,
.zynovo-contact .z-contact-form .hs-form input[type="submit"]:hover {
    color: #ffffff !important;
    background: var(--z-ink) !important;
    transform: translateY(-1px);
    box-shadow: 0 8px 24px rgba(10, 11, 15, 0.18) !important;
}

.zynovo-contact .z-contact-form .hs-form .inputs-list {
    margin: 4px 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.zynovo-contact .z-contact-form .hs-form .inputs-list label {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
}

@media (max-width: 768px) {
    .zynovo-contact .z-contact-main {
        padding: 68px 0;
    }

    .zynovo-contact .z-contact-main > .wpb_column:first-child,
    .zynovo-contact .z-contact-main > .wpb_column:last-child {
        padding: 0;
    }

    .zynovo-contact .z-contact-main > .wpb_column:last-child {
        margin-top: 32px;
    }
}
