/* Public CV application page — aligns with the careers site navy/blue visual system */
.apply-main{background:#f4f7fc;color:#183454;padding-bottom:72px}
.apply-hero{position:relative;overflow:hidden;background:linear-gradient(115deg,#071d3c 0%,#0b3265 68%,#174b8a 100%);padding:58px max(5vw,24px) 54px;color:#fff}
.apply-hero:after{content:"";position:absolute;width:420px;height:420px;border:1px solid #ffffff15;border-radius:50%;right:4%;top:-240px;box-shadow:0 0 0 45px #ffffff08,0 0 0 90px #ffffff06;pointer-events:none}
.apply-eyebrow{font-size:10px;font-weight:800;letter-spacing:2.1px;color:#70c9ff;margin:0 0 15px}
.apply-hero h1{font-size:clamp(30px,4vw,46px);line-height:1.12;letter-spacing:-1.6px;margin:0;max-width:720px}
.apply-hero h1 span{color:#83ceff}
.apply-hero>p:not(.apply-eyebrow){font-size:14px;line-height:1.7;color:#d8e6f7;max-width:650px;margin:16px 0 0}
.apply-trust{display:flex;flex-wrap:wrap;gap:20px;margin-top:24px;color:#d7e9fc;font-size:10px}
.apply-trust span: first-letter{color:#74d7b2}
.apply-form,.apply-card{width:min(1120px,calc(100% - 40px));margin:28px auto 0;background:#fff;border:1px solid #e0e8f4;border-radius:14px;box-shadow:0 8px 28px #153b6810}
.apply-form{padding:clamp(20px,3.5vw,42px)}
.apply-alert{width:min(1120px,calc(100% - 40px));margin:24px auto 0;padding:16px 20px;border:1px solid #f2c9c9;border-radius:10px;background:#fff5f5;color:#8d2630;font-size:12px}
.apply-alert ul{margin:8px 0 0;padding-left:20px;line-height:1.7}
.apply-section-heading{display:flex;gap:13px;align-items:flex-start;margin:4px 0 22px}
.apply-section-heading:not(:first-of-type){margin-top:38px}
.apply-section-heading>span{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border-radius:10px;background:#eaf2ff;color:#3478f5;font-size:11px;font-weight:900}
.apply-section-heading h2{font-size:18px;letter-spacing:-.3px;color:#102f54;margin:0}
.apply-section-heading p{font-size:11px;color:#7c8ea5;margin:5px 0 0}
.apply-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}
.apply-grid label,.job-select-label,.cover-letter-label{display:flex;flex-direction:column;gap:8px;color:#294561;font-size:11px;font-weight:750;min-width:0}
.apply-grid label em,.privacy-consent em{font-style:normal;color:#e34b5b}
.apply-grid input,.apply-grid select,.apply-grid textarea,.job-select-label select,.cover-letter-label textarea{width:100%;box-sizing:border-box;border:1px solid #dce5f1;background:#fbfcfe;border-radius:8px;padding:12px 13px;font:inherit;font-size:12px;font-weight:400;color:#1c3858;outline:none;transition:border-color .15s,box-shadow .15s}
.apply-grid input:focus,.apply-grid select:focus,.apply-grid textarea:focus,.job-select-label select:focus,.cover-letter-label textarea:focus{border-color:#6a9aff;box-shadow:0 0 0 3px #3978f51a;background:#fff}
.apply-grid textarea,.cover-letter-label textarea{resize:vertical;line-height:1.6}
.full-width{grid-column:1/-1}
.job-select-label{margin:0 0 20px}
.cv-methods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 18px}
.cv-method-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:17px;border:1px solid #dce6f3;border-radius:10px;background:#fff;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}
.cv-method-card:has(input:checked){border-color:#4a83f7;background:#f4f8ff;box-shadow:0 0 0 2px #3978f512}
.cv-method-card input{position:absolute;right:13px;top:13px;accent-color:#3978f6}
.cv-method-icon{display:grid;place-items:center;flex-shrink:0;width:35px;height:35px;border-radius:10px;background:#eaf2ff;color:#3478f5;font-size:18px;font-weight:800}
.cv-method-card strong{font-size:12px;color:#1b3a5e}
.cv-method-card small{font-size:10px;line-height:1.5;color:#8091a7}
.cv-upload-panel,.cv-editor-panel{border:1px solid #e0e9f5;border-radius:11px;padding:20px;background:#fbfcff;margin:0 0 22px}
.cv-panel-title{display:flex;gap:12px;align-items:center;margin-bottom:16px}
.cv-panel-title h3{font-size:13px;color:#1a3a5d;margin:0}
.cv-panel-title p{font-size:10px;color:#7c8fa7;margin:5px 0 0;line-height:1.6}
.file-drop{position:relative;display:flex;align-items:center;flex-direction:column;justify-content:center;gap:7px;min-height:140px;border:1.5px dashed #a8c3ef;border-radius:10px;background:#f5f9ff;cursor:pointer;text-align:center;padding:18px}
.file-drop:hover{border-color:#3978f6;background:#eef5ff}
.file-drop-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e2edff;color:#3978f6;font-size:23px}
.file-drop strong{font-size:12px;color:#25496e}
.file-drop>span:not(.file-drop-icon){font-size:10px;color:#7b8fa9}
.file-drop input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.file-selection{margin:10px 0 0;color:#7186a0;font-size:10px;overflow-wrap:anywhere}
.cv-editor-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:8px;border:1px solid #dce5f1;border-bottom:0;border-radius:8px 8px 0 0;background:#f1f5fb}
.cv-editor-toolbar button{border:1px solid #dbe5f1;border-radius:5px;background:#fff;color:#34516f;padding:7px 9px;min-height:30px;font-size:10px;cursor:pointer}
.cv-editor-toolbar button:hover{border-color:#6d9bfa;color:#286ce8}
.cv-editor-toolbar>span{height:20px;width:1px;background:#d5dfec;margin:0 3px}
.cv-editor{min-height:300px;max-height:700px;overflow:auto;border:1px solid #dce5f1;border-radius:0 0 8px 8px;background:#fff;padding:18px;outline:none;font-size:12px;line-height:1.7;color:#294561}
.cv-editor:focus{border-color:#6a9aff;box-shadow:0 0 0 3px #3978f512}
.cv-editor:empty:before{content:attr(data-placeholder);white-space:pre-wrap;color:#a0adbd;pointer-events:none}
.cv-editor h2{font-size:18px;color:#14395f;margin:16px 0 8px}.cv-editor h3,.cv-editor h4{color:#234c76}
.cv-editor ul,.cv-editor ol{padding-left:22px}
.editor-hint{font-size:10px;color:#8191a5;line-height:1.6;margin:10px 0 0}
.cover-letter-label{margin:22px 0 20px}
.cover-letter-label span{font-weight:400;color:#8191a5}
.privacy-consent{display:flex;align-items:flex-start;gap:10px;padding:16px;border-radius:8px;background:#f6f9fd;color:#637a94;font-size:10px;line-height:1.7;cursor:pointer}
.privacy-consent input{margin-top:3px;accent-color:#3978f6;flex-shrink:0}
.apply-submit-row{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:22px}
.apply-submit-row p{font-size:10px;color:#7e8fa4;line-height:1.6;margin:0}
.apply-submit-row p span{margin-right:5px}
.apply-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:8px;padding:13px 19px;background:#3978f6;color:#fff;font-size:11px;font-weight:800;text-decoration:none;cursor:pointer;box-shadow:0 5px 14px #3978f52b}
.apply-button:hover{background:#2868e7}
.apply-success{padding:50px 28px;text-align:center;max-width:760px}
.apply-success-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;margin:0 auto 18px;background:#e4f8ee;color:#128257;font-size:25px;font-weight:900}
.apply-success h2{font-size:24px;color:#12385f;margin:0}
.apply-success p{max-width:520px;margin:14px auto 22px;color:#71849b;font-size:12px;line-height:1.8}
.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:700px){.apply-hero{padding:40px 22px}.apply-trust{gap:10px 16px}.apply-form,.apply-card{width:calc(100% - 24px);margin-top:16px}.apply-form{padding:20px 16px}.apply-grid{grid-template-columns:1fr;gap:15px}.full-width{grid-column:auto}.cv-methods{grid-template-columns:1fr}.cv-method-card{padding:13px 15px 13px 58px;min-height:42px;justify-content:center}.cv-method-card .cv-method-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%)}.cv-upload-panel,.cv-editor-panel{padding:13px}.cv-editor-toolbar button{padding:7px}.apply-submit-row{align-items:stretch;flex-direction:column}.apply-submit-row .apply-button{width:100%}}
