/* Author: Ahmed Fathy. Job pages (/careers/<role>) and the open positions list on /careers. */
.job-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;border:1px solid var(--line);border-radius:var(--r);background:var(--card)}
.job-facts div{padding:16px 18px;border-inline-start:1px solid var(--line);min-width:0}
.job-facts div:first-child{border-inline-start:0}
.job-facts dt{color:var(--mut);font-size:var(--fs-xs);font-weight:700}
.job-facts dd{margin:4px 0 0;font-weight:800;font-size:var(--fs-sm)}
.job-intro{max-width:52em;margin:28px 0 0;font-size:var(--fs-body);line-height:1.8}
.job-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;margin-top:34px}
.job-cols h2{font-weight:800;font-size:var(--fs-h2s);margin:0 0 6px}
.job-cols .ticks li{color:var(--ink,inherit);font-size:var(--fs-body);margin:10px 0;line-height:1.7}
.job-loc{margin-top:30px;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:baseline;padding:16px 18px;background:var(--soft);border-radius:var(--r)}
.job-loc b{font-weight:800}
.ja-prog{list-style:none;margin:0 0 4px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;counter-reset:s}
.ja-prog li{counter-increment:s;font-size:var(--fs-xs);font-weight:700;color:var(--mut);padding-top:10px;border-top:4px solid var(--line)}
.ja-prog li::before{content:counter(s,decimal-leading-zero);direction:ltr;unicode-bidi:isolate;display:inline-block;margin-inline-end:6px}
.ja-prog li[aria-current]{color:var(--link);border-top-color:var(--link)}
.ja-prog li.done{color:var(--c2);border-top-color:var(--c2)}
form.ms .fs[hidden]{display:none}
form.ms .ja-prog{display:grid}
.ja-prog{display:none}
.ja-q{font-weight:800;font-size:var(--fs-h3);margin:0}
.ja-yn{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ja-yn label,.ja-sw label{display:flex;gap:10px;align-items:center;border:1px solid var(--line);border-radius:6px;padding:12px 14px;cursor:pointer;background:var(--card);font-weight:700}
.ja-yn label:has(input:checked),.ja-sw label:has(input:checked){border-color:var(--link);box-shadow:inset 0 0 0 1px var(--link)}
.ja-yn input,.ja-sw input{width:18px;height:18px;margin:0;flex:none;accent-color:var(--link)}
.ja-sw{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.ja-sw label{font-weight:700;direction:ltr;justify-content:flex-start}
[data-group][aria-invalid=true]{outline:2px solid #B42318;outline-offset:4px;border-radius:6px}
.ja-sub{display:grid;gap:6px}
.ja-sub>span{font-weight:700}
.ja-nav{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.ja-stop,.ja-done{border-radius:var(--r);padding:18px 20px;background:var(--soft);border-inline-start:4px solid var(--link)}
.ja-stop p,.ja-done p{margin:0 0 8px}
.ja-stop p:last-child,.ja-done p:last-child{margin:0}
.ja-done{background:var(--card);border:1px solid var(--line);border-inline-start:4px solid var(--c2)}
.ja-done h2{font-weight:800;font-size:var(--fs-h2s);margin:0 0 8px}
.ja-stop[hidden],.ja-done[hidden],form[hidden]{display:none}
.jobs{display:grid;gap:14px}
.job-card{display:grid;grid-template-columns:1fr auto;gap:10px 24px;align-items:center;text-decoration:none;color:inherit;border:1px solid var(--line);border-top:3px solid var(--navy);border-radius:var(--r);padding:20px 22px;background:var(--card);transition:border-color .2s,box-shadow .2s}
.job-card:hover{border-color:var(--link);box-shadow:0 8px 24px rgba(5,41,118,.08)}
.job-card h3{margin:0;font-weight:800;font-size:var(--fs-h3-lg)}
.job-card p{margin:4px 0 0;color:var(--mut);font-size:var(--fs-sm)}
.job-card .tagrow{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:8px;font-size:var(--fs-xs);font-weight:700;color:var(--link)}
.job-card .btn{grid-row:1/3;grid-column:2}
@media (max-width:900px){.job-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.job-facts div:nth-child(3){border-inline-start:0}.job-facts div:nth-child(n+3){border-top:1px solid var(--line)}.job-cols{grid-template-columns:minmax(0,1fr);gap:28px}.ja-sw{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.job-card{grid-template-columns:minmax(0,1fr)}.job-card .btn{grid-row:auto;grid-column:auto;justify-self:start}.ja-yn{grid-template-columns:minmax(0,1fr)}}
