.form-flex-container {
    display: flex;
    flex-wrap: wrap;
    gap: 20px; /* Adjust the gap between columns as needed */
    width: 100%;
    margin: 0 auto; /* Optional: center the container */
    padding: 10px; /* Optional: padding around the container */
}

.form-flex-item {
    flex: 1 1 calc(33.333% - 20px); /* 3 columns layout with exact thirds */
    min-width: 280px; /* Ensure fields don't get too narrow on smaller screens */
    box-sizing: border-box;
    padding: 0 10px; /* Optional: padding inside items */
}

.form-flex-item label {
    display: block;
    margin-bottom: 5px;
}

.form-flex-item .form-control,
.form-flex-item .form-check-input {
    width: 100%;
}

.form-group {
    margin-top: 20px;
    text-align: center;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .form-flex-item {
        flex: 1 1 100%;
        min-width: 100%;
    }
}