/* apply / service modal (shared by careers and services) */
.apply-modal {
    background-color: var(--main);
    border-radius: 2.5rem;
    position: relative;
}
.apply-close {
    position: absolute;
    top: 1.5rem;
    inset-inline-end: 1.5rem;
    z-index: 5;
    opacity: .8;
}
.modal-backdrop.show {
    opacity: .7;
}

/* fields */
.apply-form .form-label {
    color: rgba(255, 255, 255, .55);
    font-size: 1rem;
    margin-bottom: .35rem;
}
.apply-form .form-control,
.apply-form .form-select {
    background-color: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 1rem;
    color: var(--white);
    font-size: 1rem;
    padding: .7rem 1rem;
}
.apply-form .form-control::placeholder {
    color: rgba(255, 255, 255, .45);
}
.apply-form .form-control:focus,
.apply-form .form-select:focus {
    background-color: rgba(255, 255, 255, .12);
    border-color: var(--second);
    box-shadow: 0 0 0 .2rem rgba(48, 139, 210, .25);
    color: var(--white);
}
.apply-form .form-control[readonly] {
    background-color: rgba(255, 255, 255, .08);
    opacity: .85;
}
.apply-form textarea {
    resize: none;
}

/* select: white arrow and readable options */
.apply-form .form-select,
.apply-form.was-validated .form-select:valid,
.apply-form.was-validated .form-select:invalid {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e") !important;
    background-repeat: no-repeat;
    background-position: right 1rem center;
    background-size: 14px 10px;
    padding-right: 2.5rem;
}
.apply-form .form-select option {
    background-color: var(--main);
    color: var(--white);
}

/* file input */
.apply-form input[type="file"]::file-selector-button {
    background-color: var(--second);
    border: none;
    border-radius: .6rem;
    color: var(--white);
    margin-inline-end: .8rem;
    padding: .25rem .8rem;
}

/* date input: white calendar icon on the dark background */
.apply-form input[type="date"] {
    color-scheme: dark;
}

/* checkbox */
.apply-form .form-check-input {
    background-color: rgba(255, 255, 255, .1);
    border-color: rgba(255, 255, 255, .3);
}
.apply-form .form-check-input:checked {
    background-color: var(--second);
    border-color: var(--second);
}
.apply-form .form-check-label {
    color: rgba(255, 255, 255, .75);
    font-size: .8rem;
}

/* validation colours for a dark background */
.apply-form .invalid-feedback {
    color: #ff9b9b;
    font-size: .75rem;
}
.apply-form.was-validated .form-control:invalid,
.apply-form.was-validated .form-select:invalid {
    border-color: #ff7b7b;
}
.apply-form.was-validated .form-control:invalid:focus,
.apply-form.was-validated .form-select:invalid:focus {
    box-shadow: 0 0 0 .2rem rgba(255, 123, 123, .25);
}
.apply-form.was-validated .form-control:valid {
    border-color: rgba(255, 255, 255, .1);
    background-image: none;
}
.apply-form.was-validated .form-check-input:invalid ~ .form-check-label {
    color: #ff9b9b;
}

/* submit */
.btn-apply-submit {
    background-color: var(--second);
    border: 1px solid rgba(255, 255, 255, .5);
    color: var(--white);
    padding-block: .6rem;
    transition: all .3s ease;
}
.btn-apply-submit:hover {
    background-color: var(--white);
    color: var(--main);
}
.apply-success-icon {
    color: var(--second);
}

/* "Apply now" / "Request This Service" buttons (this rule was missing from your file) */
.btn-apply {
    background-color: var(--white);
    border: 1px solid var(--second);
    color: var(--main);
    transition: all .3s ease;
}
.btn-apply:hover {
    background-color: var(--main);
    border-color: var(--main);
    color: var(--white);
}