.formlite-wrap {
    width: 100%;
    max-width: 900px;
    margin-inline: auto;
}
.formlite-fields {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 20px;
}
.formlite-field {
    grid-column: span 6;
    min-width: 0;
}
.formlite-field[hidden] {
    display: none !important;
}
.formlite-width-50 {
    grid-column: span 3;
}
.formlite-width-33 {
    grid-column: span 2;
}
.formlite-field > label,
.formlite-field legend {
    display: block;
    font-weight: 600;
    font-size: 15px;
    margin-bottom: 8px;
    color: #172d50;
}
.formlite-field fieldset {
    border: 0;
    padding: 0;
    margin: 0;
    min-width: 0;
}
.formlite-field input:not([type="radio"]):not([type="checkbox"]),
.formlite-field textarea,
.formlite-field select {
    width: 100%;
    min-height: 48px;
    padding: 12px 14px;
    border: 1px solid #cbd4df;
    border-radius: 8px;
    background: #fff;
    color: #172d50;
    font: inherit;
    box-sizing: border-box;
}
.formlite-field textarea {
    min-height: 120px;
    resize: vertical;
}
.formlite-field :is(input, select, textarea):focus-visible,
.formlite-form button:focus-visible {
    outline: 3px solid #3972bd;
    outline-offset: 2px;
}
.formlite-choice {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin: 8px 0;
    font-size: 15px;
    line-height: 1.5;
    cursor: pointer;
}
.formlite-choice input {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    margin: 3px 0 0;
    accent-color: #c7172a;
}
.formlite-divider {
    border-bottom: 1px solid #dce3ec;
    padding-bottom: 12px;
    margin: 12px 0 0;
    font-size: 20px;
    color: #122c51;
}
.formlite-form button[type="submit"] {
    margin-top: 24px;
    padding: 15px 30px;
    border: 0;
    border-radius: 8px;
    background: #c7172a;
    color: white;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}
.formlite-form button:disabled {
    opacity: .65;
    cursor: wait;
}
.formlite-errors,
.formlite-client-error {
    background: #fff4f4;
    border-left: 4px solid #b32d2e;
    padding: 12px 16px;
    margin-bottom: 24px;
}
.formlite-success {
    background: #f2fbf4;
    border-left: 4px solid #268241;
    padding: 20px;
}
.formlite-honeypot {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}
@media (max-width: 640px) {
    .formlite-field {
        grid-column: span 6;
    }
    .formlite-form button[type="submit"] {
        width: 100%;
    }
}
