/* UniPro Contact v20.0.0 — Ninja Forms #6, inline, black premium shell */
.unipro-contact,
.unipro-contact * {
    box-sizing: border-box;
}

.unipro-contact {
    width: 100%;
    max-width: 920px;
    margin: 0 auto;
    padding: clamp(26px, 5vw, 54px);
    background: #000000;
    border: var(--unipro-form-border-width, 1px) solid var(--unipro-form-border-color, #242424);
    border-radius: 28px;
    color: #ffffff;
    box-shadow: 0 28px 80px rgba(0, 0, 0, .32);
}

.unipro-contact__brand {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 30px;
}

.unipro-contact__brand img {
    display: block;
    width: min(100%, 430px);
    height: auto;
    border: 0;
    box-shadow: none;
}

/* Keep only the top UniPro brand logo; hide Ninja Forms #6's duplicate first-field logo above FULL NAME. */
.unipro-contact__ninja-form nf-fields-wrap > nf-field:first-child img,
.unipro-contact__ninja-form nf-fields-wrap > nf-field:first-child .html-wrap img,
.unipro-contact__ninja-form .nf-form-content > nf-fields-wrap > nf-field:first-child img {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.unipro-contact__ninja-form nf-fields-wrap > nf-field:first-child .html-container,
.unipro-contact__ninja-form nf-fields-wrap > nf-field:first-child .html-wrap {
    margin-bottom: 0 !important;
}

.unipro-contact__ninja-form,
.unipro-contact__ninja-form .nf-form-cont,
.unipro-contact__ninja-form .nf-form-wrap,
.unipro-contact__ninja-form .nf-form-layout,
.unipro-contact__ninja-form .nf-form-content,
.unipro-contact__ninja-form .nf-before-form-content,
.unipro-contact__ninja-form .nf-after-form-content,
.unipro-contact__ninja-form .nf-form-title,
.unipro-contact__ninja-form .nf-response-msg {
    width: 100% !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    background: transparent !important;
    color: #ffffff !important;
}

.unipro-contact__ninja-form .nf-form-content {
    padding: 0 !important;
}

.unipro-contact__ninja-form .nf-form-title h1,
.unipro-contact__ninja-form .nf-form-title h2,
.unipro-contact__ninja-form .nf-form-title h3,
.unipro-contact__ninja-form label,
.unipro-contact__ninja-form .nf-field-label,
.unipro-contact__ninja-form .nf-field-label label,
.unipro-contact__ninja-form p {
    color: #ffffff !important;
}

.unipro-contact__ninja-form .nf-form-title h1,
.unipro-contact__ninja-form .nf-form-title h2,
.unipro-contact__ninja-form .nf-form-title h3 {
    text-align: center !important;
}

.unipro-contact__ninja-form .nf-form-fields-required,
.unipro-contact__ninja-form .nf-field-description,
.unipro-contact__ninja-form .nf-field-description p {
    color: #b9b9b9 !important;
}

.unipro-contact__ninja-form .ninja-forms-req-symbol,
.unipro-contact__ninja-form .nf-error-msg,
.unipro-contact__ninja-form .ninja-forms-field-error {
    color: #ff7272 !important;
}

.unipro-contact__ninja-form .nf-row {
    width: auto !important;
    margin-left: -8px !important;
    margin-right: -8px !important;
}

.unipro-contact__ninja-form .nf-cell {
    min-width: 0 !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
}

.unipro-contact__ninja-form .nf-field-container {
    width: 100% !important;
    margin-bottom: 20px !important;
}

.unipro-contact__ninja-form .nf-field-label {
    margin-bottom: 8px !important;
}

.unipro-contact__ninja-form .nf-field-label label,
.unipro-contact__ninja-form label {
    font-weight: 700 !important;
}

/* White text-entry surfaces on the black form shell. */
.unipro-contact__ninja-form .nf-field-element input:not([type="button"]):not([type="submit"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.unipro-contact__ninja-form .nf-field-element textarea,
.unipro-contact__ninja-form .nf-field-element select {
    width: 100% !important;
    min-height: 56px !important;
    padding: 13px 15px !important;
    border: 2px solid #d3d3d3 !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
    caret-color: #111111 !important;
    box-shadow: none !important;
    font: inherit !important;
    outline: none !important;
    transition: border-color .18s ease, box-shadow .18s ease !important;
}

.unipro-contact__ninja-form .nf-field-element textarea {
    min-height: 140px !important;
    resize: vertical;
}

.unipro-contact__ninja-form .nf-field-element input::placeholder,
.unipro-contact__ninja-form .nf-field-element textarea::placeholder {
    color: #777777 !important;
    -webkit-text-fill-color: #777777 !important;
    opacity: 1 !important;
}

.unipro-contact__ninja-form .nf-field-element input:focus,
.unipro-contact__ninja-form .nf-field-element textarea:focus,
.unipro-contact__ninja-form .nf-field-element select:focus {
    border-color: #ff7900 !important;
    background: #ffffff !important;
    color: #111111 !important;
    box-shadow: 0 0 0 4px rgba(255, 121, 0, .16) !important;
}

.unipro-contact__ninja-form .nf-field-element select option {
    background: #ffffff !important;
    color: #111111 !important;
}

.unipro-contact__ninja-form input[type="checkbox"],
.unipro-contact__ninja-form input[type="radio"] {
    accent-color: #ff7900;
}

.unipro-contact__ninja-form .nf-field-element input[type="button"],
.unipro-contact__ninja-form .nf-field-element input[type="submit"],
.unipro-contact__ninja-form .nf-field-element button,
.unipro-contact__ninja-form .submit-wrap input,
.unipro-contact__ninja-form .submit-container input {
    min-height: 56px !important;
    padding: 13px 28px !important;
    border: 1px solid #ff7900 !important;
    border-radius: 14px !important;
    background: #ff7900 !important;
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
    font-size: 17px !important;
    font-weight: 900 !important;
    letter-spacing: .03em !important;
    cursor: pointer !important;
    box-shadow: none !important;
    transition: transform .18s ease, background .18s ease, box-shadow .18s ease !important;
}

.unipro-contact__ninja-form .nf-field-element input[type="button"]:hover,
.unipro-contact__ninja-form .nf-field-element input[type="submit"]:hover,
.unipro-contact__ninja-form .nf-field-element button:hover,
.unipro-contact__ninja-form .submit-wrap input:hover,
.unipro-contact__ninja-form .submit-container input:hover {
    background: #ff922f !important;
    border-color: #ff922f !important;
    transform: translateY(-1px);
    box-shadow: 0 12px 30px rgba(255, 121, 0, .18) !important;
}

.unipro-contact__ninja-form .nf-response-msg {
    padding: 16px 18px !important;
    border: 1px solid #315c3e !important;
    border-radius: 14px !important;
    background: #0c1b11 !important;
    color: #ffffff !important;
}

.unipro-contact--error {
    display: block;
    border-color: #663434;
    background: #140909;
    color: #ffffff;
}

.unipro-contact--error strong {
    color: #ff9090;
}

.unipro-contact--error span {
    color: #ffffff;
}

@media (max-width: 767px) {
    .unipro-contact {
        padding: 24px 18px;
        border-radius: 20px;
    }

    .unipro-contact__brand {
        margin-bottom: 24px;
    }

    .unipro-contact__brand img {
        width: min(100%, 330px);
    }

    .unipro-contact__ninja-form .nf-row {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .unipro-contact__ninja-form .nf-cell {
        width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .unipro-contact__ninja-form .nf-field-element input[type="button"],
    .unipro-contact__ninja-form .nf-field-element input[type="submit"],
    .unipro-contact__ninja-form .nf-field-element button,
    .unipro-contact__ninja-form .submit-wrap input,
    .unipro-contact__ninja-form .submit-container input {
        width: 100% !important;
    }
}
