.partner-form {
    margin-top: 24px;
}
.partner-form__row {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 16px;
    margin-bottom: 12px;
}
.partner-form__field {
    flex: 1 1 100%;
    min-width: 0;
}
.partner-form__field--half {
    flex: 1 1 calc(50% - 8px);
}
.partner-form__label {
    display: block;
    margin-bottom: 6px;
    color: #43474C;
}
.partner-form__label--accent {
    color: #fa0a19;
    font-family: "ITCOfficinaSansW10-Bd", sans-serif;
    margin: 12px 0 8px;
}
.partner-form__input,
.partner-form__textarea,
.partner-form__select {
    display: block;
    width: 100%;
    padding: 8px 12px;
    border: 1px solid #C2C7CD;
    border-radius: 4px;
    background: #fff;
    color: #2C3135;
    font: inherit;
}
.partner-form__textarea {
    min-height: 90px;
    resize: vertical;
}
.partner-form__hint {
    display: block;
    margin-top: 4px;
    font-size: 12px;
    color: #8C9197;
}
.partner-form__check {
    display: flex;
    gap: 8px;
    align-items: flex-start;
    margin-bottom: 8px;
}
.partner-form__check-label {
    font-weight: normal;
    color: #73787D;
}
.partner-form__fieldset {
    border: 1px solid rgba(90, 95, 100, 0.18);
    border-radius: 6px;
    padding: 16px;
    margin: 16px 0 24px;
}
.partner-form__submit {
    display: inline-block;
    margin-top: 16px;
    padding: 10px 20px;
    border: 0;
    border-radius: 4px;
    background-color: #ee2d2f;
    color: #fff;
    font: inherit;
    cursor: pointer;
    transition: box-shadow 0.2s ease;
}
.partner-form__submit:hover,
.partner-form__submit:focus {
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
}
.partner-form__consent {
    display: block;
    margin-top: 12px;
    font-size: 12px;
    color: #8C9197;
}
.partner-form__courses {
    margin-bottom: 8px;
}
.partner-form__hp {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}
.partner-form__status {
    margin: 12px 0;
    padding: 12px 14px;
    border-radius: 4px;
    font-size: 14px;
}
.partner-form__status--ok {
    background: #e8f6ea;
    color: #1e6b2f;
}
.partner-form__status--error {
    background: #fdebec;
    color: #a1181f;
}
.partner-form__error {
    display: block;
    margin-top: 4px;
    font-size: 12px;
    color: #a1181f;
}
.partner-form__input--invalid {
    border-color: #ee2d2f;
}
.partner-form--sent .partner-form__submit {
    display: none;
}
.partner-form__submit:disabled {
    opacity: 0.65;
    cursor: wait;
}

@media (max-width: 767px) {
    .partner-form__field--half {
        flex: 1 1 100%;
    }
}
