.cj-job-details {
    max-width: 1000px;
    margin: 40px auto;
    padding: 30px;
    background: #ffffff;
    border: 1px solid #dddddd;
    box-sizing: border-box;
}

.cj-job-title {
    margin-top: 0;
}

.cj-job-description,
.cj-job-requirements,
.cj-job-apply-section {
    margin-top: 30px;
}

.cj-job-application-form {
    max-width: 700px;
}

.cj-form-row {
    margin-bottom: 20px;
}

.cj-form-row label {
    display: block;
    margin-bottom: 7px;
    font-weight: 600;
}

.cj-form-row input[type="text"],
.cj-form-row input[type="email"],
.cj-form-row input[type="tel"],
.cj-form-row input[type="file"],
.cj-form-row textarea {
    width: 100%;
    padding: 10px;
    border: 1px solid #cccccc;
    border-radius: 4px;
    box-sizing: border-box;
}

.cj-form-row textarea {
    resize: vertical;
}

.cj-job-submit-button,
.cj-job-view-button {
    display: inline-block;
    padding: 11px 18px;
    border: 0;
    border-radius: 4px;
    background: #2271b1;
    color: #ffffff;
    cursor: pointer;
    text-decoration: none;
}

.cj-job-submit-button:hover,
.cj-job-view-button:hover {
    background: #135e96;
    color: #ffffff;
}

.required {
    color: #d63638;
}

.cj-application-success {
    padding: 12px;
    margin-bottom: 20px;
    border-left: 4px solid #00a32a;
    background: #edfaef;
}

.cj-application-error {
    padding: 12px;
    margin-bottom: 20px;
    border-left: 4px solid #d63638;
    background: #fcf0f1;
}

@media screen and (max-width: 782px) {
    .cj-job-details {
        margin: 20px 10px;
        padding: 20px;
    }

    .cj-job-application-form {
        max-width: 100%;
    }
}