/* Careers uses the shared site shell, typography, buttons and existing artwork. */
.careers-hero { background:linear-gradient(110deg,#03101ee8,#062440d9),url('../images/network.webp') center/cover; border-bottom:1px solid #285579; }
.careers-hero-inner { max-width:var(--max); margin:auto; padding:34px 36px 48px; display:grid; grid-template-columns:1.05fr 1fr; gap:48px; align-items:center; }
.careers-breadcrumb { display:flex; gap:10px; margin-bottom:34px; color:#b6cde0; font-size:11px; }
.careers-breadcrumb a:hover { color:white; text-decoration:underline; }
.careers-copy h1 { margin:16px 0 20px; }
.careers-copy h1 em { font-style:normal; color:#9ed9ff; }
.careers-lead { font-size:20px; line-height:1.5; color:#e7f3ff; }
.careers-copy > p:not(.eyebrow):not(.careers-lead) { max-width:510px; color:#c2d2df; line-height:1.75; }
.careers-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:26px; }
.careers-team { margin:36px 0 0; position:relative; border:1px solid #5288ac; border-radius:4px; overflow:hidden; box-shadow:0 22px 55px #0005; }
.careers-team img { display:block; width:100%; height:335px; object-fit:cover; }
.careers-team figcaption { position:absolute; inset:auto 0 0; padding:35px 25px 22px; background:linear-gradient(transparent,#031222f2); font:700 23px/1.3 Exo,Arial,sans-serif; }
.careers-values { max-width:var(--max); margin:auto; padding:25px 36px; display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
.careers-values > div { display:flex; gap:15px; align-items:center; }
.careers-values p { margin:0; }
.careers-values strong,.careers-values span { display:block; }
.careers-values strong { font-size:14px; color:#dceeff; margin-bottom:6px; }
.careers-values span { color:#aac0d2; font-size:12px; line-height:1.55; }
.careers-opportunities { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.careers-opportunities > div > p:not(.eyebrow),.careers-connect p:not(.eyebrow) { max-width:530px; line-height:1.8; color:#b7cad9; }
.careers-openings { padding:30px; background:linear-gradient(130deg,#103351,#071c31); border:1px solid #396b91; border-radius:4px; }
.careers-openings h3 { font:700 25px/1.25 Exo,Arial,sans-serif; margin:16px 0 10px; }
.careers-note { font-size:11px; margin-bottom:0; }
.careers-benefits { background:#eaf1f7; color:#0a2339; }
.careers-section-inner { max-width:var(--max); margin:auto; padding:55px 36px; }
.careers-benefits .eyebrow { color:#356587; }
.careers-benefits .section-intro { margin-bottom:30px; }
.careers-benefits .section-intro p:not(.eyebrow) { color:#496175; }
.careers-benefit-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.careers-benefit-grid article { background:#fff; border:1px solid #cfdeea; border-radius:4px; padding:24px; box-shadow:0 6px 16px #153b5810; }
.careers-benefit-grid img { padding:5px; width:40px; height:40px; box-sizing:content-box; background:#082b48; border-radius:4px; }
.careers-benefit-grid h3 { font:700 18px/1.3 Exo,Arial,sans-serif; margin:17px 0 10px; }
.careers-benefit-grid p { font-size:13px; line-height:1.75; color:#4b6375; margin-bottom:0; }
.careers-benefit-links { margin:26px 0 0; font-size:12px; line-height:1.8; color:#4b6375; }
.careers-benefit-links a { color:#075c91; text-decoration:underline; text-underline-offset:3px; }
.careers-connect { display:flex; gap:36px; justify-content:space-between; align-items:center; }
.careers-connect .button { flex-shrink:0; }
.careers-equal-opportunity { max-width:var(--max); margin:auto; padding:0 36px 40px; font-size:12px; line-height:1.8; color:#93adbf; }
@media(max-width:1080px) { .careers-hero-inner { gap:30px; padding-left:25px; padding-right:25px; } .careers-team img { height:320px; } .careers-benefit-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .careers-opportunities { gap:35px; } }
@media(max-width:760px) { .careers-hero-inner { grid-template-columns:1fr; padding:28px 24px 34px; gap:20px; } .careers-breadcrumb { margin-bottom:26px; } .careers-team { margin:0; } .careers-team img { height:250px; } .careers-values { grid-template-columns:1fr; padding:26px 24px; gap:22px; } .careers-opportunities { grid-template-columns:1fr; gap:24px; } .careers-section-inner { padding:42px 24px; } .careers-connect { flex-direction:column; align-items:flex-start; gap:18px; } .careers-equal-opportunity { padding-left:24px; padding-right:24px; } }
@media(max-width:450px) { .careers-hero-inner { padding-left:22px; padding-right:22px; } .careers-lead { font-size:18px; } .careers-actions { flex-direction:column; align-items:stretch; } .careers-benefit-grid { grid-template-columns:1fr; gap:14px; } .careers-openings { padding:24px; } .careers-benefit-grid article { padding:22px; } }

/* Open positions: list on the careers page and one page per position. */
.job-list { list-style:none; margin:18px 0 0; padding:0; display:grid; gap:10px; }
.job-list a { position:relative; display:grid; gap:4px; padding:15px 54px 15px 18px; border:1px solid #396b91; border-radius:4px; background:#06182b99; transition:border-color .2s, background .2s; }
.job-list a:hover, .job-list a:focus-visible { border-color:#8ae6ff; background:#0c2c4a; }
.job-list-title { font:700 16px/1.35 Exo,Arial,sans-serif; color:#f2f9ff; }
.job-list-meta { font-size:12px; color:#a9c3d9; }
.job-list-arrow { position:absolute; right:18px; top:50%; transform:translateY(-50%); color:#8ae6ff; font-size:20px; }
.job-hero { background:linear-gradient(110deg,#03101ee8,#062440d9),url('../images/network.webp') center/cover; border-bottom:1px solid #285579; }
.job-hero-inner { max-width:var(--max); margin:auto; padding:34px 36px 44px; }
.job-hero .careers-breadcrumb { margin-bottom:26px; }
.job-hero h1 { margin:14px 0 16px; max-width:900px; }
.job-chips { display:flex; flex-wrap:wrap; gap:10px; list-style:none; margin:0; padding:0; }
.job-chips li { padding:6px 14px; border:1px solid #4f8fbb; border-radius:99px; font-size:12px; color:#cfe6f7; background:#0a2a4488; }
.job-hero .careers-actions { margin-top:24px; }
.job-layout { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:40px; align-items:start; }
.job-description { padding:32px 36px; border:1px solid #2f6f99; border-radius:12px; background:linear-gradient(170deg,#082540,#041625); }
.job-description p, .job-description li { font-size:15px; line-height:1.85; color:#d2e3f0; }
.job-description p { margin:0 0 16px; }
.job-description ul, .job-description ol { margin:0 0 20px; padding-left:24px; }
.job-description li { margin-bottom:7px; }
.job-description li::marker { color:#67baff; }
.job-description strong { color:#f2f9ff; }
.job-description a { color:#8ae6ff; text-decoration:underline; text-underline-offset:3px; }
.job-aside { position:sticky; top:130px; padding:26px; border:1px solid #396b91; border-radius:12px; background:linear-gradient(130deg,#103351,#071c31); }
.job-aside h2 { font:700 22px/1.3 Exo,Arial,sans-serif; margin:0 0 10px; }
.job-aside > p { color:#b7cad9; font-size:13px; line-height:1.75; }
.job-aside .button { margin:8px 0 16px; }
.job-aside .careers-note { margin:0 0 16px; color:#93adbf; }
.job-aside .text-link { font-size:12px; }
@media(max-width:900px) { .job-layout { grid-template-columns:1fr; } .job-aside { position:static; } .job-description { padding:22px 18px; } .job-hero-inner { padding-left:22px; padding-right:22px; } }
.job-list[hidden] { display:none; }
.job-toggle { margin-top:6px; cursor:pointer; }
.job-toggle .button-arrow { transition:transform .25s; }
.job-toggle[aria-expanded="true"] .button-arrow { transform:rotate(90deg); }
@media (prefers-reduced-motion:reduce) { .job-toggle .button-arrow { transition:none; } }
.job-hero .visually-hidden, .job-aside .visually-hidden { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
