/* =========================================================
   HUMANBOTS — CAREERS (cr-*)
   Pages rendered by public/admin/lib/careers-render.js (published
   from CRM → Recruitment), behaviour in assets/js/careers.js.
   Loads after global.css and service.css: labels, titles, hero
   base, buttons and the section rhythm come from service.css
   (svc-*), the form fields follow the contact page. Everything
   here is scoped under .cr so the header, footer and the rest of
   the site are untouched.

   1. Base                 6. Job page: hero, content, details
   2. Breadcrumbs, hero    7. Application form
   3. Working here         8. File upload
   4. Search and filters   9. Success, closed and preview states
   5. Job cards, pages    10. Phone filter sheet, responsive, motion
========================================================= */

/* ---------- 1. BASE ---------- */
.cr{--cr-card:linear-gradient(145deg,#0d0d0d,#050505);--cr-err:#ff7a50;--cr-ok:#30d158;--cr-sticky:128px}
.cr [hidden]{display:none!important}
.cr-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.cr :where(ul,ol,dl,dd,figure){margin:0}
.cr svg{flex:none}
.cr .svc-btn{text-decoration:none}
.cr .svc-btn:disabled,.cr .svc-btn[aria-busy="true"]{opacity:.6;cursor:wait;transform:none;box-shadow:none}
.cr .svc-btn--ghost:hover{background:rgba(255,255,255,.03)}
.cr-wide{width:100%}

/* ---------- 2. BREADCRUMBS, HERO ---------- */
.cr-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:0 10px;margin-bottom:24px;color:#666;font-size:12px}
.cr-crumbs a{color:#999;transition:color .2s ease}
.cr-crumbs a:hover{color:#fff}
.cr-crumbs span[aria-hidden]{color:#3a3a3a}
.cr-crumbs [aria-current]{color:#777;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60vw}

.cr-hero{padding:150px 0 96px}
.cr-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:48px;align-items:center}
.cr-hero-copy .svc-h1{font-size:clamp(42px,5.6vw,76px)}
.cr-hero .svc-h1 span{display:block}
.cr-visual{position:relative;border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#030303;box-shadow:0 40px 100px rgba(0,0,0,.55);isolation:isolate}
.cr-visual picture,.cr-visual img{display:block;width:100%;height:auto}
.cr-visual img{aspect-ratio:1601/982;object-fit:cover;transform:scale(1.04);transition:transform 1.6s var(--ease)}
.cr-visual:hover img{transform:scale(1.07)}
.cr-visual::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.85) 100%)}
.cr-stats{position:absolute;left:16px;right:16px;bottom:16px;z-index:1;display:flex;gap:1px;padding:0;list-style:none;border:1px solid rgba(255,255,255,.1);border-radius:16px;overflow:hidden;background:rgba(255,255,255,.08);-webkit-backdrop-filter:blur(18px) saturate(160%);backdrop-filter:blur(18px) saturate(160%)}
.cr-stats li{flex:1 1 0;min-width:0;padding:14px 16px;background:rgba(10,10,10,.72)}
.cr-stats b{display:block;color:#fff;font-family:var(--font-display);font-size:20px;font-weight:650;letter-spacing:-.03em;line-height:1.15;overflow-wrap:anywhere}
.cr-stats li:last-child b{font-size:15px;line-height:1.35;padding-top:3px}
.cr-stats span{display:block;margin-top:3px;color:#8a8a8a;font-size:11px;letter-spacing:.06em;text-transform:uppercase}

/* ---------- 3. WORKING HERE ---------- */
.cr-about-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:64px;align-items:start}
.cr-about-text{padding-top:30px;font-size:17px}
.cr-values{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin-top:64px;padding:0;list-style:none}
.cr-values li{padding:26px;border:1px solid var(--line);border-radius:20px;background:var(--cr-card);transition:border-color .3s ease,transform .3s ease}
.cr-values li:hover{border-color:rgba(255,77,22,.35);transform:translateY(-2px)}
.cr-values .svc-mono{color:var(--orange)}
.cr-values h3{margin-top:22px;color:#fff;font-size:20px;font-weight:600;letter-spacing:-.03em}
.cr-values p{margin-top:10px;color:var(--dim);font-size:14.5px;line-height:1.7}

/* rich text from the CRM (sanitised: p, lists, bold, italic, links, h3/h4) */
.cr-prose{color:var(--text);font-size:16px;line-height:1.8}
.cr-prose p{margin:0 0 14px}
.cr-prose > :last-child{margin-bottom:0}
.cr-prose :is(ul,ol){margin:0 0 16px;padding:0;list-style:none}
.cr-prose ol{counter-reset:cr}
.cr-prose li{position:relative;margin:0 0 9px;padding-left:24px}
.cr-prose ul > li::before{content:"";position:absolute;left:4px;top:.72em;width:6px;height:6px;border-radius:50%;background:var(--orange)}
.cr-prose ol > li{counter-increment:cr}
.cr-prose ol > li::before{content:counter(cr) ".";position:absolute;left:0;color:var(--orange);font-family:var(--font-mono);font-size:12px;top:.25em}
.cr-prose :is(strong,b){color:#eee;font-weight:600}
.cr-prose a{color:#fff;text-decoration:underline;text-decoration-color:rgba(255,77,22,.6);text-underline-offset:3px}
.cr-prose a:hover{color:var(--orange)}
.cr-prose :is(h3,h4){margin:24px 0 10px;color:#fff;font-size:18px;font-weight:600;letter-spacing:-.02em}
.cr-prose h4{font-size:16px}

/* ---------- 4. SEARCH AND FILTERS ---------- */
.cr-pos-head{margin-bottom:40px}
.cr-filters{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:16px;border:1px solid var(--line);border-radius:22px;background:radial-gradient(circle at 100% 0,rgba(255,77,22,.06),transparent 40%),#070707}
.cr-search{position:relative;grid-column:1 / -1;display:flex;align-items:center}
.cr-search svg{position:absolute;left:18px;width:18px;height:18px;color:#777;pointer-events:none}
.cr-search input{width:100%;min-height:54px;padding:0 18px 0 48px;border:1px solid #2a2a2a;border-radius:999px;background:#0b0b0b;color:#f2f2f2;font:inherit;font-size:16px;transition:border-color .2s ease,background .2s ease}
.cr-search input::placeholder{color:#5a5a5a}
.cr-search input:hover{border-color:#3a3a3a}
.cr-search input:focus{outline:none;border-color:var(--orange);background:#0d0d0d}
.cr-search input::-webkit-search-cancel-button{filter:grayscale(1) invert(.6)}
.cr-filter-toggle{display:none}
.cr-panel{grid-column:1 / -1;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}
.cr-panel-head{display:none}
.cr-panel-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}
.cr-field label{display:block;margin-bottom:7px;color:#8a8a8a;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.cr-field small{display:block;margin-top:6px;color:#555;font-size:11.5px}
.cr-field select,.cr-field input,.cr-sort select{width:100%;min-height:46px;padding:0 14px;border:1px solid #2a2a2a;border-radius:12px;background:#0b0b0b;color:#eee;font:inherit;font-size:14.5px;transition:border-color .2s ease}
.cr-field select,.cr-sort select{appearance:none;-webkit-appearance:none;padding-right:36px;background:linear-gradient(45deg,transparent 50%,#777 50%) right 18px top 50% / 6px 6px no-repeat,linear-gradient(-45deg,transparent 50%,#777 50%) right 13px top 50% / 6px 6px no-repeat,#0b0b0b;background-position:right 18px top 19px,right 13px top 19px,0 0;cursor:pointer}
.cr-field :is(select,input):hover,.cr-sort select:hover{border-color:#3a3a3a}
.cr-field :is(select,input):focus,.cr-sort select:focus{outline:none;border-color:var(--orange)}
.cr-field select.is-set{border-color:rgba(255,77,22,.55);color:#fff}
.cr-salary-row{display:flex;gap:8px;align-items:center}
.cr-salary-row select{flex:0 0 92px}
.cr-cur{flex:none;display:grid;place-items:center;min-height:46px;padding:0 12px;border:1px solid #2a2a2a;border-radius:12px;color:#999;font-family:var(--font-mono);font-size:12px}
.cr-panel-foot{display:flex;justify-content:flex-end}
.cr-field--salary{grid-column:span 2}
.cr-panel-foot .svc-btn{min-height:42px}
.cr-panel-foot .cr-show{display:none}
.cr-backdrop{display:none}

.cr-results-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:26px 2px 16px}
.cr-results{color:#9a9a9a;font-size:14px}
.cr-results b{color:#fff;font-weight:600}
.cr-sort{display:flex;align-items:center;gap:10px}
.cr-sort label{color:#777;font-size:12px}
.cr-sort select{min-height:40px;width:auto;border-radius:999px;font-size:13.5px}

/* ---------- 5. JOB CARDS, PAGES ---------- */
.cr-jobs{display:grid;gap:12px;padding:0;list-style:none}
.cr-job-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;padding:26px 28px;border:1px solid var(--line);border-radius:22px;background:var(--cr-card);transition:border-color .3s ease,transform .3s var(--ease),box-shadow .3s ease}
.cr-job-card:hover{border-color:rgba(255,77,22,.38);transform:translateY(-2px);box-shadow:0 24px 60px -30px rgba(255,77,22,.25)}
.cr-job-top{display:flex;flex-wrap:wrap;align-items:center;gap:10px;min-height:18px}
.cr-job-dept{color:var(--orange);font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.cr-badge{display:inline-flex;align-items:center;padding:3px 9px;border:1px solid rgba(255,77,22,.45);border-radius:999px;background:rgba(255,77,22,.08);color:#ff9a72;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.cr-job-title{margin:10px 0 0;color:#fff;font-size:clamp(20px,2.2vw,25px);font-weight:600;letter-spacing:-.035em;line-height:1.15}
.cr-job-title a{color:inherit}
.cr-job-title a::after{content:"";position:absolute;inset:0;border-radius:inherit}
.cr-job-title a:focus-visible{outline:none}
.cr-job-card:has(.cr-job-title a:focus-visible){outline:2px solid var(--orange);outline-offset:3px}
.cr-meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:14px;padding:0;list-style:none;color:#8f8f8f;font-size:13px}
.cr-meta li{display:inline-flex;align-items:center;gap:7px}
.cr-meta svg{width:15px;height:15px;color:#5f5f5f}
.cr-job-text{max-width:640px;margin-top:14px;color:#9a9a9a;font-size:14.5px;line-height:1.65}
.cr-job-side{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-end;gap:10px;text-align:right}
.cr-job-salary{display:inline-flex;align-items:center;gap:8px;color:#f2f2f2;font-size:14.5px;font-weight:500}
.cr-job-salary svg,.cr-hero-salary svg{width:17px;height:17px;color:var(--orange)}
.cr-job-date{color:#666;font-size:12px}
.cr-apply-btn{min-height:46px;margin-top:4px}

.cr-pages{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:30px}
.cr-pages button{min-width:44px;min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:transparent;color:#bbb;font:inherit;font-size:14px;cursor:pointer;transition:border-color .2s ease,color .2s ease,background .2s ease}
.cr-pages button:hover:not(:disabled){border-color:#444;color:#fff}
.cr-pages button[aria-current="page"]{border-color:var(--orange);background:rgba(255,77,22,.1);color:#fff;font-weight:600}
.cr-pages button:disabled{opacity:.35;cursor:not-allowed}

.cr-empty{display:grid;justify-items:center;gap:10px;padding:56px 24px;border:1px dashed #2a2a2a;border-radius:22px;background:#050505;text-align:center}
.cr-empty > svg{width:52px;height:52px;padding:14px;border:1px solid rgba(255,77,22,.35);border-radius:50%;background:rgba(255,77,22,.07);color:var(--orange)}
.cr-empty h3{margin-top:8px;color:#fff;font-size:22px;font-weight:600;letter-spacing:-.03em}
.cr-empty p{max-width:460px;color:var(--dim);font-size:15px;line-height:1.65}
.cr-empty-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:10px}
.cr-gone-title{margin:0 0 30px}
.cr-general{margin-top:28px;color:#888;font-size:14px;text-align:center}
.cr-general a,.cr-closed a,.cr-preview a{color:#fff;text-decoration:underline;text-decoration-color:rgba(255,77,22,.6);text-underline-offset:3px}

/* ---------- 6. JOB PAGE ---------- */
.cr-hero--job{padding:150px 0 70px}
.cr-job-h1{font-size:clamp(38px,5.4vw,72px);max-width:960px}
.cr-meta--hero{gap:10px;margin-top:0}
.cr-meta--hero li{padding:8px 14px;border:1px solid #232323;border-radius:999px;background:rgba(255,255,255,.02);color:#c9c9c9;font-size:13.5px}
.cr-meta--hero svg{color:var(--orange)}
.cr-hero-salary{display:inline-flex;align-items:center;gap:9px;margin-top:20px;color:#fff;font-size:18px;font-weight:500;letter-spacing:-.01em}
.cr-closed{display:flex;align-items:flex-start;gap:12px;max-width:720px;margin-top:28px;padding:16px 18px;border:1px solid rgba(255,77,22,.35);border-radius:16px;background:rgba(255,77,22,.06);color:#ddd;font-size:15px;line-height:1.55}
.cr-closed svg{width:20px;height:20px;margin-top:1px;color:var(--orange)}
.cr-closed strong{color:#fff;font-weight:600}
.cr-job-body{padding-top:80px}
.cr-job-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:64px;align-items:start}
.cr-sec{padding-bottom:36px;margin-bottom:36px;border-bottom:1px solid var(--soft-line)}
.cr-sec:last-child{margin-bottom:0;border-bottom:0;padding-bottom:0}
.cr-sec h2{margin-bottom:16px;color:#fff;font-size:clamp(22px,2.4vw,28px);font-weight:600;letter-spacing:-.035em}
.cr-skills{display:flex;flex-wrap:wrap;gap:8px;padding:0;list-style:none}
.cr .cr-skills li{margin:0;padding:8px 14px;border:1px solid #2a2a2a;border-radius:999px;color:#ddd;font-size:13.5px;line-height:1.2}
.cr .cr-skills li::before{content:none}
.cr-aside{position:sticky;top:var(--cr-sticky)}
.cr-facts{padding:24px;border:1px solid var(--line);border-radius:22px;background:radial-gradient(circle at 85% 0%,rgba(255,77,22,.1),transparent 45%),linear-gradient(145deg,#101010,#060606);box-shadow:0 40px 100px rgba(0,0,0,.5)}
.cr-facts-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:6px;color:#666;font-size:11px;text-transform:uppercase}
.cr-facts-head b{color:var(--orange);font-weight:500}
.cr-facts dl div{display:grid;grid-template-columns:120px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid var(--soft-line)}
.cr-facts dt{color:#6f6f6f;font-size:12.5px}
.cr-facts dd{color:#e6e6e6;font-size:14px;line-height:1.45}
.cr-facts .svc-btn{margin-top:20px}

/* ---------- 7. APPLICATION FORM ---------- */
.cr-apply{background:radial-gradient(circle at 15% 0%,rgba(255,77,22,.07),transparent 35%),#000}
.cr-apply-wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:60px;align-items:start}
.cr-apply-wrap--solo{grid-template-columns:minmax(0,820px);justify-content:center}
.cr-apply-intro{position:sticky;top:var(--cr-sticky)}
.cr-apply-intro .svc-title span{font-size:.62em;line-height:1.15;margin-top:10px}
.cr-apply-intro .svc-lede{margin-top:22px}
.cr-form-card{position:relative;padding:34px;border:1px solid var(--line);border-radius:22px;background:radial-gradient(circle at top right,rgba(255,77,22,.07),transparent 40%),var(--card)}
.cr-loading{display:flex;align-items:center;gap:12px;color:#888;font-size:14px}
.cr-spinner{width:18px;height:18px;border:2px solid #333;border-top-color:var(--orange);border-radius:50%;animation:cr-spin .8s linear infinite}
@keyframes cr-spin{to{transform:rotate(360deg)}}
.cr-closed-text{color:#bbb;font-size:15px;line-height:1.6}

.cr-form{display:grid;grid-template-columns:1fr 1fr;gap:20px 16px}
.cr-q{grid-column:1 / -1;min-width:0}
.cr-q--half{grid-column:auto}
.cr-q > label,.cr-q legend,.cr-q .cr-label{display:block;margin-bottom:8px;padding:0;color:#c4c4c4;font-size:13.5px;font-weight:500;line-height:1.45}
.cr-req{color:var(--orange);margin-left:2px}
.cr-opt{color:#666;font-weight:400}
.cr-help{margin:-2px 0 9px;color:#6f6f6f;font-size:12.5px;line-height:1.5}
.cr-q fieldset{margin:0;padding:0;border:0;min-width:0}
.cr-q :is(input[type="text"],input[type="email"],input[type="tel"],input[type="url"],input[type="date"],select,textarea){width:100%;min-height:50px;padding:13px 15px;border:1px solid #2a2a2a;border-radius:12px;background:#0a0a0a;color:#f2f2f2;font:inherit;font-size:15px;transition:border-color .2s ease,background .2s ease}
.cr-q input[type="date"]{color-scheme:dark}
.cr-q textarea{min-height:140px;resize:vertical;line-height:1.55}
.cr-q select{appearance:none;-webkit-appearance:none;padding-right:40px;background:linear-gradient(45deg,transparent 50%,#777 50%) right 20px top 22px / 6px 6px no-repeat,linear-gradient(-45deg,transparent 50%,#777 50%) right 15px top 22px / 6px 6px no-repeat,#0a0a0a}
.cr-q :is(input,textarea)::placeholder{color:#555}
.cr-q :is(input,select,textarea):hover{border-color:#3a3a3a}
.cr-q :is(input,select,textarea):focus{outline:none;border-color:var(--orange);background:#0d0d0d}
.cr-q.is-invalid :is(input[type="text"],input[type="email"],input[type="tel"],input[type="url"],input[type="date"],select,textarea){border-color:var(--cr-err)}
.cr-err{display:flex;gap:6px;align-items:flex-start;margin-top:8px;color:var(--cr-err);font-size:12.5px;line-height:1.45}
.cr-err:empty{display:none}
.cr-err::before{content:"!";flex:none;display:grid;place-items:center;width:15px;height:15px;margin-top:1px;border-radius:50%;background:var(--cr-err);color:#000;font-size:10px;font-weight:800}
.cr-count-note{margin-top:6px;color:#555;font-size:11.5px;text-align:right}

/* choices: real radios and checkboxes styled as pills (keyboard and screen readers use the inputs) */
.cr-choices{display:flex;flex-wrap:wrap;gap:8px}
.cr-choice{position:relative;margin:0;cursor:pointer}
.cr-choice input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.cr-choice span{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:9px 15px;border:1px solid #2a2a2a;border-radius:999px;color:#a5a5a5;font-size:14px;transition:border-color .2s ease,color .2s ease,background .2s ease}
.cr-choice span::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:#333;transition:background .2s ease}
.cr-choice:hover span{border-color:#444;color:#ddd}
.cr-choice input:checked + span{border-color:rgba(255,77,22,.65);background:rgba(255,77,22,.09);color:#fff}
.cr-choice input:checked + span::before{background:var(--orange)}
.cr-choice input:focus-visible + span{outline:2px solid var(--orange);outline-offset:2px}
.cr-choices--rating .cr-choice span{justify-content:center;min-width:46px;padding:9px 0}
.cr-choices--rating .cr-choice span::before{content:none}
.cr-q.is-invalid .cr-choice span{border-color:rgba(255,122,80,.5)}
.cr-q > .cr-consent{display:flex;margin:0;gap:12px;align-items:flex-start;cursor:pointer;color:#c4c4c4;font-size:14px;line-height:1.55}
.cr-consent input{appearance:none;-webkit-appearance:none;flex:none;width:22px;height:22px;margin:1px 0 0;border:1.5px solid #3a3a3a;border-radius:7px;background:#0a0a0a center/13px no-repeat;cursor:pointer;transition:background-color .15s,border-color .15s}
.cr-consent input:checked{border-color:var(--orange);background-color:var(--orange);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.6 6.3l2.2 2.2 4.6-4.9' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.cr-consent input:focus-visible{outline:2px solid var(--orange);outline-offset:2px}
.cr-q.is-invalid .cr-consent input{border-color:var(--cr-err)}
.cr-heading{grid-column:1 / -1;margin-top:10px;padding-top:24px;border-top:1px solid var(--soft-line);color:#fff;font-size:20px;font-weight:600;letter-spacing:-.03em}
.cr-instructions{grid-column:1 / -1;color:var(--dim);font-size:14px;line-height:1.65}
.cr-privacy{grid-column:1 / -1;padding:16px 18px;border:1px solid var(--soft-line);border-radius:14px;background:#070707;color:#8a8a8a;font-size:13px;line-height:1.6}
.cr-privacy strong{display:block;margin-bottom:4px;color:#ddd;font-size:13px;font-weight:600}
.cr-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.cr-form-alert{grid-column:1 / -1;padding:14px 16px;border:1px solid rgba(255,122,80,.45);border-radius:14px;background:rgba(255,122,80,.07);color:#ffb59a;font-size:14px;line-height:1.5}
.cr-form-alert:empty{display:none}
.cr-form-alert button{margin-left:6px;padding:0;border:0;background:none;color:#fff;font:inherit;text-decoration:underline;cursor:pointer}
.cr-submit{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:22px;border-top:1px solid var(--soft-line)}
.cr-submit p{max-width:330px;color:#666;font-size:12px;line-height:1.5}
.cr-submit .svc-btn{min-width:210px}

/* ---------- 8. FILE UPLOAD ---------- */
.cr-drop{position:relative;display:grid;justify-items:center;gap:6px;padding:28px 20px;border:1.5px dashed #333;border-radius:16px;background:#080808;color:#aaa;text-align:center;cursor:pointer;transition:border-color .2s ease,background .2s ease}
.cr-drop:hover{border-color:#4a4a4a}
.cr-drop.is-drag{border-color:var(--orange);background:rgba(255,77,22,.07)}
.cr-drop:focus-within{border-color:var(--orange)}
.cr-drop input[type="file"]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.cr-drop input[type="file"]:focus-visible{outline:none}
.cr-drop:has(input:focus-visible){outline:2px solid var(--orange);outline-offset:3px}
.cr-drop-icon{display:grid;place-items:center;width:46px;height:46px;margin-bottom:4px;border:1px solid rgba(255,77,22,.35);border-radius:50%;background:rgba(255,77,22,.07);color:var(--orange)}
.cr-drop-icon svg{width:20px;height:20px}
.cr-drop strong{color:#eee;font-size:15px;font-weight:500}
.cr-drop u{color:var(--orange);text-underline-offset:3px}
.cr-drop small{color:#666;font-size:12.5px}
.cr-q.is-invalid .cr-drop{border-color:var(--cr-err)}
.cr-file{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 16px;border:1px solid #2a2a2a;border-radius:16px;background:#0a0a0a}
.cr-file-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:rgba(255,77,22,.1);color:var(--orange);font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.04em}
.cr-file-name{overflow:hidden;color:#f2f2f2;font-size:14.5px;text-overflow:ellipsis;white-space:nowrap}
.cr-file-meta{margin-top:3px;color:#777;font-size:12px}
.cr-file-meta.is-done{color:var(--cr-ok)}
.cr-progress{height:4px;margin-top:8px;border-radius:4px;background:#222;overflow:hidden}
.cr-progress span{display:block;height:100%;width:0;border-radius:inherit;background:var(--orange);transition:width .2s ease}
.cr-file-actions{display:flex;gap:6px}
.cr-mini{min-height:36px;padding:0 13px;border:1px solid #2e2e2e;border-radius:999px;background:transparent;color:#ddd;font:inherit;font-size:12.5px;cursor:pointer;transition:border-color .2s ease,color .2s ease}
.cr-mini:hover{border-color:#555;color:#fff}
.cr-mini--danger:hover{border-color:rgba(255,122,80,.6);color:var(--cr-err)}

/* ---------- 9. SUCCESS, CLOSED, PREVIEW ---------- */
.cr-done{display:grid;justify-items:center;gap:12px;padding:26px 0 10px;text-align:center}
.cr-done-icon{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--orange);color:#000;box-shadow:0 0 45px rgba(255,77,22,.25)}
.cr-done-icon svg{width:28px;height:28px}
.cr-done h3{margin-top:8px;color:#fff;font-size:28px;font-weight:600;letter-spacing:-.04em}
.cr-done h3:focus{outline:none}
.cr-done p{max-width:460px;color:var(--dim);font-size:15px;line-height:1.65}
.cr-ref{display:inline-flex;flex-direction:column;gap:4px;margin:8px 0;padding:14px 22px;border:1px solid rgba(255,77,22,.4);border-radius:16px;background:rgba(255,77,22,.07)}
.cr-ref small{color:#999;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.cr-ref b{color:#fff;font-family:var(--font-mono);font-size:20px;letter-spacing:.06em}
.cr-done .svc-actions{justify-content:center;margin-top:10px}
.cr-closed-box{display:grid;gap:12px}
.cr-closed-box h3{color:#fff;font-size:22px;font-weight:600;letter-spacing:-.03em}
.cr-closed-box p{color:var(--dim);font-size:15px;line-height:1.6}
.cr-preview{margin-bottom:22px;padding:12px 16px;border:1px dashed rgba(255,214,10,.5);border-radius:14px;background:rgba(255,214,10,.06);color:#f3e7a6;font-size:14px;line-height:1.5}

/* ---------- 10. RESPONSIVE, PHONE FILTER SHEET, MOTION ---------- */
@media (max-width:1020px){
  .cr-hero-grid,.cr-about-grid,.cr-apply-wrap{grid-template-columns:1fr;gap:40px}
  .cr-about-text{padding-top:0}
  .cr-job-grid{grid-template-columns:1fr;gap:48px}
  .cr-aside,.cr-apply-intro{position:static}
}
@media (max-width:760px){
  .cr-hero{padding:128px 0 64px}
  .cr-hero--job{padding:128px 0 48px}
  .cr-hero .svc-actions .svc-btn{flex:1 1 auto}
  .cr-stats{position:static;margin:0;border-radius:0;border-width:1px 0 0;flex-wrap:wrap}
  .cr-visual::after{content:none}
  .cr-stats li{flex:1 1 40%;padding:12px 14px}
  .cr-stats li:nth-child(3){flex-basis:100%}
  .cr-stats b{font-size:18px}
  .cr-values{margin-top:40px}
  .cr-job-card{grid-template-columns:1fr;gap:18px;padding:22px 20px}
  .cr-job-side{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;text-align:left}
  .cr-job-side .cr-apply-btn{width:100%;margin-top:4px}
  .cr-results-bar{flex-wrap:wrap}
  .cr-form-card{padding:22px 18px}
  .cr-form{grid-template-columns:1fr}
  .cr-q--half{grid-column:1 / -1}
  .cr-submit{flex-direction:column;align-items:stretch}
  .cr-submit .svc-btn{width:100%}
  .cr-file{grid-template-columns:auto minmax(0,1fr)}
  .cr-file-actions{grid-column:1 / -1}
  .cr-file-actions .cr-mini{flex:1}
  .cr-facts dl div{grid-template-columns:110px 1fr}

  /* the filters become a bottom sheet (only when careers.js runs: .cr-js) */
  .cr-js .cr-filters{grid-template-columns:minmax(0,1fr) auto;padding:10px;border-radius:20px}
  .cr-js .cr-search{grid-column:1}
  .cr-js .cr-search input{min-height:48px;font-size:16px}
  .cr-js .cr-filter-toggle{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 16px;border:1px solid #2a2a2a;border-radius:999px;background:#0b0b0b;color:#eee;font:inherit;font-size:14px;cursor:pointer}
  .cr-js .cr-filter-toggle svg{width:17px;height:17px}
  .cr-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--orange);color:#000;font-size:11.5px;font-weight:700}
  .cr-js .cr-panel{grid-template-columns:1fr;gap:0;align-items:stretch;position:fixed;left:0;right:0;bottom:0;z-index:10051;display:flex;flex-direction:column;max-height:86vh;max-height:86dvh;padding:8px 18px calc(18px + env(safe-area-inset-bottom));border:1px solid #222;border-bottom:0;border-radius:24px 24px 0 0;background:#0b0b0b;box-shadow:0 -30px 80px rgba(0,0,0,.7);transform:translateY(102%);visibility:hidden;transition:transform .35s var(--ease),visibility 0s linear .35s}
  .cr-js .cr-panel::before{content:"";align-self:center;width:38px;height:5px;margin:4px 0 6px;border-radius:999px;background:#333}
  .cr-js .cr-panel.is-open{transform:none;visibility:visible;transition:transform .35s var(--ease)}
  .cr-js .cr-panel-head{display:flex;align-items:center;justify-content:space-between;padding:6px 0 12px}
  .cr-panel-title{color:#fff;font-size:20px;font-weight:600;letter-spacing:-.03em}
  .cr-icon-btn{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid #2a2a2a;border-radius:50%;background:transparent;color:#ccc;cursor:pointer}
  .cr-icon-btn svg{width:18px;height:18px}
  .cr-field--salary{grid-column:auto}
  .cr-js .cr-panel-fields{grid-template-columns:1fr;overflow-y:auto;overscroll-behavior:contain;padding-bottom:6px}
  .cr-js .cr-panel-foot{display:grid;grid-template-columns:1fr 1.3fr;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid #1d1d1d}
  .cr-js .cr-panel-foot .cr-show{display:inline-flex}
  .cr-js .cr-backdrop{display:block;position:fixed;inset:0;z-index:10050;background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
}
@media (max-width:420px){
  .cr-form-card{padding:20px 16px}
  .cr-meta{gap:8px 14px}
}
@media (prefers-reduced-motion:reduce){
  .cr *,.cr *::before,.cr *::after{transition:none!important;animation:none!important}
  .cr-visual img,.cr-visual:hover img{transform:none}
}
