/* Babylon Security / Novabrand – Applicant experience 1.0.12
   Single authoritative form design. Exactly 2 visible stages. */
.bb-vacancy-shell{--bb-navy:#0b2b44;--bb-blue:#1f5b86}
.bb-vacancy-card{position:relative;overflow:hidden;border:1px solid #dbe5ed;border-radius:20px;box-shadow:0 12px 35px rgba(11,43,68,.07)}
.bb-vacancy-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#0b2b44,#4387b3)}
.bb-vacancy-accordion{gap:12px}
.bb-vacancy-accordion .bb-accordion-item{border-radius:15px;border-color:#dce6ee}
.bb-vacancy-accordion .bb-accordion-item.is-open{border-color:#8bafc8;box-shadow:0 8px 24px rgba(11,43,68,.06)}
.bb-vacancy-accordion .bb-accordion-trigger{min-height:60px;padding:15px 19px;font-size:15px}
.bb-vacancy-accordion .bb-accordion-trigger[aria-expanded="true"]{background:#eff5f9}
.bb-vacancy-accordion .bb-accordion-content{padding:4px 20px 20px;font-size:14px}
.bb-vacancy-accordion li::marker{color:#1f5b86}
.bb-vacancy-accordion li{list-style-position:outside}
.bb-vacancy-hidden-quote{display:none!important}

#bb-application-modal,#bb-application-modal *{box-sizing:border-box}
#bb-application-modal{position:fixed!important;inset:0!important;z-index:2147483000!important;border:0!important;padding:18px!important;max-width:none!important;max-height:none!important;width:100vw!important;height:100dvh!important;background:transparent!important;overflow:hidden!important;align-items:center!important;justify-content:center!important}
#bb-application-modal:not(.is-open){display:none!important}
#bb-application-modal.is-open{display:flex!important}
#bb-application-modal::backdrop{background:rgba(2,18,31,.77);backdrop-filter:blur(5px)}
#bb-application-modal .bb-modal-backdrop{position:fixed;inset:0;z-index:0;background:rgba(2,18,31,.76);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}
#bb-application-modal .bb-modal-dialog{position:relative!important;z-index:2!important;display:block!important;margin:auto!important;padding:32px!important;width:min(100%,740px)!important;max-width:740px!important;min-height:0!important;max-height:calc(100dvh - 36px)!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;border:1px solid #e1eaf0!important;border-radius:20px!important;background:#fff!important;box-shadow:0 35px 100px rgba(0,0,0,.33)!important;opacity:1!important;visibility:visible!important;transform:none!important}
#bb-application-modal .bb-modal-close{position:absolute;top:41px;right:42px;z-index:5!important;width:39px;height:39px;border-radius:50%;border:1px solid rgba(255,255,255,.38);background:rgba(255,255,255,.14);color:#fff;line-height:1;font-size:25px;cursor:pointer}
#bb-application-modal .bb-modal-heading{background:linear-gradient(135deg,#0b2b44,#1b5074);border-radius:14px;padding:24px 67px 24px 24px;margin-bottom:18px}
#bb-application-modal .bb-modal-heading h2,#bb-application-modal .bb-modal-heading p,#bb-application-modal .bb-modal-heading .bb-kicker{color:#fff!important}
#bb-application-modal .bb-modal-heading h2{margin:0 0 7px;font-size:clamp(22px,3.7vw,30px);line-height:1.2;overflow-wrap:anywhere}
#bb-application-modal .bb-modal-heading p{margin:0;font-size:13px;line-height:1.55;color:#e4f0f6!important}
#bb-application-modal .bb-form-progress{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px;margin:18px 0 14px!important}
#bb-application-modal .bb-form-progress span{display:block;height:5px;background:#e2ecf2;border-radius:100px}
#bb-application-modal .bb-form-progress span.is-active{background:#1f5b86}
#bb-application-modal .bb-step-count{font-size:12px;font-weight:800;color:#365b74;margin:0 0 23px;letter-spacing:.015em}
#bb-application-modal .bb-form-step{width:100%;min-width:0;clear:both}
#bb-application-modal .bb-form-step[hidden],#bb-application-modal .bb-form-step[aria-hidden="true"],#bb-application-modal .bb-form-step[inert],#bb-application-modal .bb-form-step:not(.is-active){display:none!important}
#bb-application-modal .bb-form-step.is-active:not([hidden]):not([inert]){display:block!important}
#bb-application-modal .bb-form-step h3{color:#0b2b44;font-size:19px;line-height:1.3;font-weight:800;margin:0 0 20px}
#bb-application-modal .bb-form-grid{min-width:0}
#bb-application-modal .bb-form-grid.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
#bb-application-modal .bb-form-step label{font-size:13px;color:#314d61;font-weight:760;line-height:1.55;min-width:0;max-width:100%;overflow-wrap:break-word;margin-bottom:13px}
#bb-application-modal .bb-form-step input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),#bb-application-modal .bb-form-step textarea,#bb-application-modal .bb-form-step select{display:block;min-width:0;max-width:100%;width:100%;min-height:47px;padding:12px 14px;background:#fafcfe;border:1px solid #cbd9e4;border-radius:10px;color:#102f44;outline:none;box-shadow:none;font-size:15px}
#bb-application-modal .bb-form-step textarea{min-height:112px;max-height:220px;resize:vertical;font-family:inherit!important}
#bb-application-modal .bb-form-step input:focus-visible,#bb-application-modal .bb-form-step textarea:focus-visible,#bb-application-modal .bb-form-step button:focus-visible{outline:3px solid #82b5d6;outline-offset:2px}
#bb-application-modal .bb-screening-fields[hidden]{display:none!important}
#bb-application-modal .bb-screening-fields{padding:15px 0;border-top:1px solid #e7edf1;margin:6px 0 15px}
#bb-application-modal .bb-screening-question{border:0;padding:0;margin:0 0 17px;min-width:0}
#bb-application-modal .bb-screening-question legend{font-size:13px;font-weight:800;color:#24465e;padding:0;margin-bottom:8px}
#bb-application-modal .bb-radio-row{display:flex;flex-wrap:wrap;gap:9px}
#bb-application-modal .bb-radio-row label{display:block;margin:0}
#bb-application-modal .bb-radio-row input{position:absolute;opacity:0;pointer-events:none}
#bb-application-modal .bb-radio-row span{border:1px solid #cbd9e4;border-radius:9px;padding:10px 16px;font-size:13px;cursor:pointer;background:#fff;color:#1c3e55}
#bb-application-modal .bb-radio-row input:checked+span{border-color:#1f5b86;background:#eaf3f8;color:#0b2b44;font-weight:800}
#bb-application-modal .bb-cv-section{margin-top:19px;padding-top:19px;border-top:1px solid #e3eaef;min-width:0}
#bb-application-modal .bb-cv-section h4{display:none!important}
#bb-application-modal .bb-file-field{display:flex!important;flex-direction:column;gap:9px;min-width:0;padding:17px!important;border:1px dashed #8daec5;border-radius:13px;background:#f0f6fa;color:#0b2b44}
#bb-application-modal .bb-file-title{font-size:15px;font-weight:800;color:#0b2b44}
#bb-application-modal .bb-cv-required-label[hidden]{display:none!important}
#bb-application-modal .bb-file-field input[type="file"]{display:block;width:100%;max-width:100%;min-width:0;padding:12px;border:1px dashed #b3c7d5;border-radius:10px;background:#fff;color:#36556b;font-size:13px;overflow-wrap:anywhere}
#bb-application-modal .bb-file-field input[type="file"]::file-selector-button{margin:0 12px 5px 0;max-width:100%;background:#0b2b44;color:#fff;border:0;border-radius:9px;padding:10px 13px;font-weight:760;cursor:pointer}
#bb-application-modal .bb-cv-filename{max-width:100%;font-size:12px;font-weight:650;color:#366784;overflow-wrap:anywhere}
#bb-application-modal .bb-file-field small{font-size:12px;color:#5a7283}
#bb-application-modal .bb-consent{display:flex!important;flex-direction:row!important;align-items:flex-start!important;gap:12px!important;background:#f8fbfd;border:1px solid #d9e4ec;border-radius:12px;padding:14px!important;margin:17px 0 0!important;color:#28475d}
#bb-application-modal .bb-consent input[type="checkbox"]{appearance:none;-webkit-appearance:none;display:block!important;flex:0 0 23px!important;width:23px!important;min-width:23px!important;max-width:23px!important;height:23px!important;min-height:23px!important;margin:0!important;position:relative;border:2px solid #7193a9;border-radius:6px;background:#fff;cursor:pointer}
#bb-application-modal .bb-consent input[type="checkbox"]:checked{border-color:#1f5b86;background:#1f5b86}
#bb-application-modal .bb-consent input[type="checkbox"]:checked:after{content:"";position:absolute;left:6px;top:2px;width:6px;height:11px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
#bb-application-modal .bb-consent span{flex:1;min-width:0;font-size:13px;line-height:1.55}
#bb-application-modal .bb-consent a{color:#1f5b86;text-decoration:underline}
#bb-application-modal .bb-step-actions{display:flex!important;flex-wrap:wrap;gap:11px;justify-content:flex-end;align-items:stretch;isolation:isolate;position:relative;clear:both;margin-top:20px}
#bb-application-modal .bb-step-actions .bb-btn{flex:1 1 145px;min-width:0!important;min-height:50px;border-radius:10px;padding:12px 15px;font-size:14px;font-weight:800;line-height:1.35;text-align:center;white-space:normal;cursor:pointer}
#bb-application-modal .bb-step-actions .bb-btn:only-child{flex-basis:100%}
#bb-application-modal .bb-step-actions .bb-btn-primary{background:#1f5b86!important;color:#fff!important;border-color:#1f5b86!important}
#bb-application-modal .bb-step-actions .bb-btn-secondary{background:#fff!important;color:#0b2b44!important;border:1px solid #cbd8e1!important}
#bb-application-modal .bb-step-actions .bb-btn:disabled{opacity:.7;cursor:wait}
#bb-application-modal .bb-form-response{display:none;margin:12px 0 0;border-radius:11px;padding:12px 14px;line-height:1.55;font-size:13px;font-weight:700;overflow-wrap:anywhere}
#bb-application-modal .bb-form-response:not(:empty){display:block}
#bb-application-modal .bb-form-response.is-error{background:#fff3f2;border:1px solid #edb7b1;color:#8a302c}
#bb-application-modal .bb-form-response.is-info{background:#edf5fa;border:1px solid #bbd5e7;color:#244f6c}
#bb-application-modal .bb-form-response.is-success{background:#eaf6ef;border:1px solid #b5daca;color:#185a43}
#bb-application-modal .bb-form-step .bb-invalid{border-color:#c64037!important}
#bb-application-modal .bb-consent input.bb-invalid{outline:2px solid #c64037;outline-offset:3px}
body.bb-application-modal-open{overflow:hidden!important}
body.bb-application-modal-open > *:not(#bb-application-modal){pointer-events:none}
body.bb-application-modal-open > #bb-application-modal,body.bb-application-modal-open > #bb-application-modal *{pointer-events:auto}
@media(max-width:640px){
  .bb-vacancy-shell{padding-inline:10px}
  .bb-vacancy-card{padding:20px 16px}
  #bb-application-modal{margin:0!important;padding:0!important;width:100vw!important;height:100dvh!important;max-height:100dvh!important}
  #bb-application-modal .bb-modal-dialog{width:100%!important;max-width:100%!important;height:100dvh!important;max-height:100dvh!important;border:0!important;border-radius:0!important;padding:18px 16px max(30px,env(safe-area-inset-bottom))!important}
  #bb-application-modal .bb-modal-close{top:35px;right:32px}
  #bb-application-modal .bb-modal-heading{margin-top:0;padding:20px 58px 19px 18px;border-radius:13px}
  #bb-application-modal .bb-modal-heading h2{font-size:24px}
  #bb-application-modal .bb-form-grid.two{grid-template-columns:minmax(0,1fr);gap:0}
  #bb-application-modal .bb-form-step h3{font-size:18px}
  #bb-application-modal .bb-form-step textarea{min-height:108px}
  #bb-application-modal .bb-file-field{padding:14px!important}
  #bb-application-modal .bb-step-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  #bb-application-modal .bb-step-actions .bb-btn{width:100%;min-width:0!important;flex:none;padding:12px 9px;font-size:13px}
  #bb-application-modal .bb-step-actions .bb-btn:only-child{grid-column:1/-1}
}
@media(max-width:370px){
 #bb-application-modal .bb-modal-dialog{padding:15px 12px max(24px,env(safe-area-inset-bottom))!important}
 #bb-application-modal .bb-step-actions .bb-btn{font-size:12px}
 #bb-application-modal .bb-file-field input[type="file"]::file-selector-button{display:block;margin:0 0 9px}
}
