form#apply-form { position: relative; width: 100%; padding-right: 0.9375rem; padding-left: 0.9375rem; max-width: 83.3333333333%; margin: 0 auto; }
form#apply-form .fieldset .field { position: relative; width: 100%; padding-right: 0.9375rem; padding-left: 0.9375rem; -webkit-box-flex: 0; flex: 0 0 50%; max-width: 50%; margin: 0 0 1rem; }
.country_field { position: static; z-index: 10000; top: 0; left: 0; width: 100%; height: 100%; } 
.country_field.is-visible { visibility: visible; display: block!important; position: fixed; left: 50%; top: 50%; max-width: 100%; transform: translate(-50%,-50%); z-index: 999999; right: 0; height: 100%; overflow: auto; }
body.popup_overlay { position: relative; overflow: hidden; }
body.popup_overlay:before { position: absolute; top: 0; left: 0; width: 100%; height: 100%; content: ""; background-color: rgba(0,0,0,.3); z-index: 2; }
body.popup_overlay.applynow-index-index .page-main .columns { z-index: unset; }
.popup_box { cursor: pointer; font-weight: 900; text-decoration: underline; -webkit-transition: all .2s ease; transition: all .2s ease; }
.popup_box:hover { color: #cbd329; }
.applynow-index-index .page-main { max-width: 100%!important; padding-left: 0!important; padding-right: 0!important; background-image: url("../images/login-background.jpg"); background-size: cover; background-repeat: no-repeat; background-position: 50%; background-attachment: fixed; min-height: calc(100vh - 187px); position: relative; padding-top: 1.5rem!important;  }
.applynow-index-index .page-main:after { position: absolute; top: 0; left: 0; width: 100%; height: 100%; content: ""; background-color: rgba(0,0,0,.85); } 
.applynow-index-index .page-main .columns { max-width: 77.5rem; margin: 0 auto; padding: 0 1.25rem; z-index: 2; position: relative; }
form#apply-form { margin-top: 0rem; }
form#apply-form h2 { color: #fff; margin: 0 0 1rem; font-weight: 700; font-size: 1.625rem; line-height: 2.125rem; }
form#apply-form .fieldset { display: flex; flex-wrap: wrap; margin-left: -0.9375rem; margin-right: -0.9375rem; }
form#apply-form .fieldset .field .label { width: 100%; text-align: left; color: #fff; margin-bottom: 13px; font-weight: 400; cursor: pointer; padding: 0; display: inline-block; }
form#apply-form .company-info, form#apply-form .company-addresses, form#apply-form .opning-time, form#apply-form .key-contact, form#apply-form .direct-debit { width: 100%; margin-top: 3rem; }
form#apply-form .time-group { width: 100%; margin-bottom: 1rem; }
form#apply-form .company-info h2, form#apply-form .company-addresses h2, form#apply-form .opning-time h2, form#apply-form .time-group h2, form#apply-form .key-contact h2, form#apply-form .direct-debit h2 { padding-left: 0.9375rem; }
.apply-now .site-logo { max-width: 15rem; margin: 0 auto 4rem; } 
form#apply-form .fieldset .field .control { width: 100%; }
form#apply-form .fieldset .field .control input, form#apply-form .fieldset .field select,
form#apply-form .select2-container .select2-selection--single,
.dealer-position .select2-container .select2-selection--single { max-height: 2.75rem; height: 2.75rem; border: 0.0625rem solid #fff; border-radius: 2px; line-height: 1.125rem; font-size: .875rem; font-weight: 400; color: #000; transition: all .2s ease; -webkit-transition: all .2s ease; padding: 0.6875rem 1rem; }
form#apply-form .fieldset .field .control input:focus, form#apply-form .fieldset .field select:focus,
form#apply-form .fieldset .field .control input:hover, form#apply-form .fieldset .field select:hover { border:  .0625rem solid #cbd329; box-shadow: none; }
form#apply-form .fieldset .field select { color: #00000080; -webkit-appearance: none; -moz-appearance: none; cursor: pointer; }
form#apply-form .select2-container--default .select2-selection--single .select2-selection__rendered,
.dealer-position .select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 1.125rem; padding: 0; }
form#apply-form .fieldset .field select option { color: #000; }
form#apply-form .fieldset .field .control.arrow { position: relative; }
form#apply-form .fieldset .field.country .control.arrow:after,
.dealer-position.control.arrow:after { display: none; }
form#apply-form .fieldset .field .control.arrow:after { position: absolute; content: ""; right: 25px; top: 15px; background: url(../images/chevron-black.svg); width: 22px; height: 14px; background-size: 22px; background-repeat: no-repeat; transition: all 0.5s; opacity: 0.5; pointer-events: none; border-width: 0;  }
form#apply-form .fieldset .field .control.arrow.active-toggle:after { transform: rotate(180deg); }
form#apply-form div.mage-error { color: #fc1c03; font-weight: 700; font-size: 1rem; }
form#apply-form div#country-error { position: absolute; top: 45px; }
form#apply-form div#dealer_position-error { position: absolute; bottom: -28px; }

form#apply-form .country_field { display: flex; flex-wrap: wrap; justify-content: space-between; }
form#apply-form .country_field .field { max-width: 47%!important; }
.country_field button.modal-close { display: none; }
section.country_field.is-visible button.modal-close { display: block; }
.lookup-postcode { display: none!important; flex-wrap: wrap; max-width: 68%; }
.lookup-postcode .field { margin-bottom: 0!important; }
.lookup-postcode button { padding: 0.6875rem 1rem; background-color: #cbd329; color: #000; border: 0.125rem solid #cbd329; text-decoration: none; letter-spacing: .075em; font-size: .875rem; line-height: 1.125rem; font-weight: 700; text-transform: uppercase; font-family: inherit; -webkit-transition: all .2s ease; transition: all .2s ease; width: 17%;  }
p.show_form { font-size: 0.875rem; color: #fff; line-height: 1.125rem; margin: 1rem 0 1rem 0.9375rem; }
.lookup-postcode button:hover { background-color: #b6be25; border-color: #b6be25; }
.time-box { display: flex; width: 50%; align-items: center; margin: 0 0 1rem; padding-left: 0.9375rem; }
.time-box label { width: 10%; color: #fff; }
.time-box input { width: 30%; height: 2.75rem; max-height: 2.75rem; padding: 0.6875rem 1rem; font-size: .875rem; line-height: 1.125rem; font-weight: 400; border-radius: 2px; border: none; margin-right: 5px; cursor: pointer; }
.time-group-title { display: flex; width: 50%; padding-left: 0.9375rem; justify-content: flex-end; margin: 0 0 0.7rem; }
.time-group-title span { width: 30%; color: #fff; text-transform: capitalize; }
.time-box .form__check { position: relative; margin-left: 1rem; width: 0.9375rem; height: 0.9375rem; }
.time-box .form__checkmark {     position: absolute; cursor: pointer; top: 0; left: 0; height: 13px; width: 13px; background-color: #000; border: 0.0625rem solid #cbd329; }
.time-box .form__check input:checked~.form__checkmark:after,
.field.direct_debit_field input:checked~p.form__checkmark:after { display: -webkit-box; display: flex; -webkit-box-align: center; align-items: center; -webkit-box-pack: center; justify-content: center; }
.time-box .form__check .form__checkmark:after,
.field.direct_debit_field p.form__checkmark:after { left: 4px; top: 0; width: 0.25rem; height: 0.5rem; border: solid #cbd329; border-width: 0 0.0625rem 0.0625rem 0; -webkit-transform: rotate(45deg); transform: rotate(45deg); } 
.time-box .form__checkmark:after,
.field.direct_debit_field p.form__checkmark:after { content: ""; position: absolute; display: none; }
.time-box input[type="checkbox"] { position: absolute; opacity: 0; cursor: pointer; height: 0.9375rem; width: 0.9375rem; z-index: 99; }
.time-box.disabled input[type="text"] { background: #b5c2c4; pointer-events: none; }
.applynow-index-index .page.messages { z-index: 9; /*max-width: 62.5rem; margin: 0 auto; position: absolute; top: 130px; left: 50px; right: 50px;*/ } 
.page.messages { max-width: 77.5rem; margin: 0 auto; }
.message.error, .message.sucess { font-size: 1rem; }
.applynow-index-index div#password-strength-meter-container { display: none; }
form#apply-form .direct-debit h2 { font-size: 1rem; line-height: 1.5rem; margin: 0; }
.field.direct_debit_field { flex: auto!important; max-width: 100%!important; margin-bottom: 0!important; margin-left: 0.9375rem!important; }
.field.direct_debit_field label { color: #fff; margin: 0 0 0.7rem; display: inline-block; padding-left: 0.9375rem; font-size: 0.875rem; line-height: 1.125rem; cursor: pointer; }
.field.direct_debit_field p.form__checkmark { position: absolute; cursor: pointer; top: 5px; left: 0; height: 13px; width: 13px; background-color: #000; margin: 0; border: 0.0625rem solid #cbd329; }
.field.direct_debit_field input { opacity: 0; position: absolute; cursor: pointer; height: 0.9375rem; width: 0.9375rem; z-index: 99; left: 0; top: 5px; }
.field.direct_debit_field label a { color: #fff; text-decoration: underline; font-weight: 700; }
.field.direct_debit_field label a:hover { text-decoration: underline!important; color: #cbd329; }
button.form_submit_btn { max-width: 18.75rem; margin: 3rem auto 0; width: 100%; }
.select2-container--default .select2-search--dropdown .select2-search__field { padding: .3125rem 1rem!important; }
.select2-container--default .select2-search--dropdown .select2-search__field:focus { box-shadow: none; }
.country_field .modal__title { display: none; }
form#apply-form .country_field.country_field.is-visible .field .control { height: 43px; }
.country_field.country_field.is-visible .modal__title { display: block; font-size: 1.625rem; line-height: 2.125rem; color: #fff; margin: 0 0 2rem; font-weight: 600; padding-left: 0.9375rem; }
form#apply-form .country_field.is-visible .field { max-width: 100%!important; margin-bottom: 1rem; }
section.country_field.is-visible button.modal-close {  background-color: transparent; color: #fff; border: 0.125rem solid #cbd329; font-size: .875rem; line-height: 1.125rem; font-weight: 700; -webkit-transition: all .2s ease; transition: all .2s ease; width: 100%; padding: 0.6875rem 1rem; text-transform: uppercase; text-decoration: none; font-family: inherit; margin-left: 0.9375rem; }
section.country_field.is-visible button.modal-close:hover { color: #b6be25; border-color: #b6be25; }
.overflow { display: flex; flex-wrap: wrap; justify-content: space-between; }
.country_field.is-visible .overflow { max-width: 30.5rem; margin: 0; padding: 2.5rem; display: block; position: relative; top: 50%; left: 50%; transform: translate(-50%,-50%); }
.popup_btn { display: none; align-items: center; margin-top: 3rem; margin-left: 0.9375rem; justify-content: space-between; width: 100%;}
.country_field.is-visible .popup_btn { display: flex; }  
button.save { background-color: #cbd329; color: #000; border: 0.125rem solid #cbd329; text-decoration: none; letter-spacing: .075em; font-size: .875rem; line-height: 1.125rem; font-weight: 700; -webkit-transition: all .2s ease; transition: all .2s ease; width: 100%; padding: 0.6875rem 1rem; text-transform: uppercase; font-family: inherit; }
.applynow-index-index input.mage-error, .applynow-index-index select.mage-error, .applynow-index-index .mage-error ~ .select2-container { border: .0625rem solid #fc1c03!important; }
form#apply-form .fieldset .field .control input::placeholder, form#apply-form .fieldset .field .control select::placeholder { color: #000; opacity: 0.4; font-family: 'Nunito Sans', sans-serif; }
form#apply-form .select2-container { width: 100%!important; }
form#apply-form .fieldset .field.country { padding-bottom: 20px; }
/*flatpickr css*/
.flatpickr-calendar.animate.open { -webkit-animation: fpFadeInDown 300ms cubic-bezier(.23,1,.32,1); animation: fpFadeInDown 300ms cubic-bezier(.23,1,.32,1); }
.flatpickr-calendar.open { display: inline-block; z-index: 99999; }
.flatpickr-calendar.open, .flatpickr-calendar.inline { opacity: 1; max-height: 640px; visibility: visible; }
.flatpickr-calendar { background: transparent; opacity: 0; display: none; text-align: center; visibility: hidden; padding: 0; -webkit-animation: none; animation: none; direction: ltr; border: 0; font-size: 14px; line-height: 24px; border-radius: 5px; position: absolute; width: 307.875px; -webkit-box-sizing: border-box; box-sizing: border-box; -ms-touch-action: manipulation; touch-action: manipulation; background: #fff; -webkit-box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgb(0 0 0 / 8%); box-shadow: 1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgb(0 0 0 / 8%); }
.flatpickr-calendar.arrowTop:before { border-bottom-color: #e6e6e6; }
.flatpickr-calendar.arrowTop:before, .flatpickr-calendar.arrowTop:after { bottom: 100%; }
.flatpickr-calendar:before { border-width: 5px; margin: 0 -5px; }
.flatpickr-calendar:before, .flatpickr-calendar:after { position: absolute; display: block; pointer-events: none; border: solid transparent; content: ''; height: 0; width: 0; left: 22px; }
.flatpickr-time { text-align: center; outline: 0; display: block; height: 0; line-height: 40px; max-height: 40px; -webkit-box-sizing: border-box; box-sizing: border-box; overflow: hidden; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; }
.flatpickr-calendar.hasTime .flatpickr-time { height: 40px; border-top: 1px solid #e6e6e6; }
.flatpickr-calendar.noCalendar.hasTime .flatpickr-time { height: auto; }
.numInputWrapper { position: relative; height: auto; }
.flatpickr-time .numInputWrapper { -webkit-box-flex: 1; -webkit-flex: 1; -ms-flex: 1; flex: 1; width: 40%; height: 40px; float: left; }
.numInputWrapper input, .numInputWrapper span { display: inline-block; }
.numInputWrapper input { width: 100%; }
.flatpickr-time input { background: transparent; -webkit-box-shadow: none; box-shadow: none; border: 0; border-radius: 0; text-align: center; margin: 0; padding: 0; height: inherit; line-height: inherit; color: #393939; font-size: 14px; position: relative; -webkit-box-sizing: border-box; box-sizing: border-box; -webkit-appearance: textfield; -moz-appearance: textfield; appearance: textfield; }
.flatpickr-time input.flatpickr-hour { font-weight: bold; }
.numInputWrapper span { position: absolute; right: 0; width: 14px; padding: 0 4px 0 2px; height: 50%; line-height: 50%; opacity: 0; cursor: pointer; border: 1px solid rgba(57,57,57,0.15); -webkit-box-sizing: border-box; box-sizing: border-box; }
.numInputWrapper span.arrowUp { top: 0; border-bottom: 0; }
.numInputWrapper span:after { display: block; content: ""; position: absolute; }
.numInputWrapper span.arrowUp:after { border-left: 4px solid transparent; border-right: 4px solid transparent; border-bottom: 4px solid rgba(57,57,57,0.6); top: 26%; }
.flatpickr-time .numInputWrapper span.arrowUp:after { border-bottom-color: #393939; }
.numInputWrapper span.arrowDown { top: 50%; }
.numInputWrapper span.arrowDown:after { border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 4px solid rgba(57,57,57,0.6); top: 40%; }
.flatpickr-time .numInputWrapper span.arrowDown:after { border-top-color: #393939; }
.flatpickr-time .flatpickr-time-separator, .flatpickr-time .flatpickr-am-pm { height: inherit; float: left; line-height: inherit; color: #393939; font-weight: bold; width: 2%; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-align-self: center; -ms-flex-item-align: center; align-self: center; }
.flatpickr-time .flatpickr-am-pm { outline: 0; width: 18%; cursor: pointer; text-align: center; font-weight: 400; }
.numInputWrapper:hover span { opacity: 1; }  
.flatpickr-time .flatpickr-am-pm:focus, .flatpickr-time .flatpickr-am-pm:hover, .flatpickr-time input:focus, .flatpickr-time input:hover { background: #eee; }
/**/

@media (max-width: 1253px) {
    .overflow { justify-content: flex-start; }
    form#apply-form .country_field .field { max-width: 45%!important; }
}
@media (max-width: 1155px) {
    form#apply-form { max-width: 100%; }
    body.applynow-index-index * { box-sizing: inherit; }
    .time-box , .time-group-title, .overflow { width: 100%; }
    form#apply-form .country_field .field { max-width: 100%!important; }
    .lookup-postcode { width: 100%; max-width: 100%; }
    .lookup-postcode .field { max-width: 70%!important; flex: auto!important; }
    .lookup-postcode button { width: 30%; }
    .popup_btn { width: auto; margin-right: .9375rem; }
    .time-box .form__check .form__checkmark:after, .field.direct_debit_field p.form__checkmark:after { top: -1px; left: 3px; }
}
@media (max-width: 599px) {
    /*.applynow-index-index .page.messages { left: 20px; right: 20px; }*/
    form#apply-form { padding-left: 0; padding-right: 0; }
    form#apply-form .fieldset .field { max-width: 100%; flex: auto; }
    .lookup-postcode button { width: auto; }
    form#apply-form .fieldset .field .control.arrow.dealer-position { padding-bottom: 20px; }
    form#apply-form div#dealer_position-error { bottom: -7px; }
}