/* Shared visual language for the team applications. */
:root{--job-bg:#061018;--job-panel:#0b1721;--job-edge:rgba(112,222,250,.22);--job-blue:#17c4ec;--job-ink:#f4fbff;--job-muted:#adc1cb}
.ofa-job-page{margin:0;background:var(--job-bg);color:var(--job-ink);font-family:Poppins,Inter,Arial,sans-serif;overflow-x:hidden}
.ofa-job-page *{box-sizing:border-box}
.ofa-job-page a{color:inherit}
.ofa-job-page a:focus-visible,.ofa-job-page button:focus-visible{outline:3px solid #86ecff;outline-offset:4px}
.job-nav{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:78px;padding:14px clamp(20px,4vw,64px);border-bottom:1px solid rgba(119,222,250,.13);background:rgba(3,9,14,.86);backdrop-filter:blur(18px)}
.job-nav img{width:158px;max-height:52px;object-fit:contain;object-position:left}
.job-nav-links{display:flex;align-items:center;gap:clamp(15px,2.4vw,36px);font-size:13px;font-weight:600}
.job-nav-links a{text-decoration:none;color:#b9cbd5;transition:color .2s}
.job-nav-links a:hover{color:#fff}
.job-nav-links .job-nav-cta{padding:11px 18px;border:1px solid rgba(80,207,244,.5);border-radius:999px;color:#d9f8ff;background:rgba(17,167,213,.11)}
.job-main{position:relative;isolation:isolate;padding-bottom:88px}
.job-main::before{content:"";position:absolute;z-index:-1;inset:0 0 auto;height:900px;background:radial-gradient(ellipse 50% 45% at 90% 20%,rgba(28,175,228,.16),transparent 72%),radial-gradient(ellipse 35% 45% at 3% 55%,rgba(109,97,242,.09),transparent 78%);pointer-events:none}
.job-wrap{width:min(1240px,calc(100% - 48px));margin-inline:auto}
.job-breadcrumb{display:flex;align-items:center;gap:9px;padding:27px 0 0;color:#93afbc;font-size:12px;font-weight:600;letter-spacing:.02em}
.job-breadcrumb a{text-decoration:none;color:#a6dcec}
.job-breadcrumb a:hover{text-decoration:underline}
.job-hero{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);min-height:510px;margin-top:24px;overflow:hidden;border:1px solid var(--job-edge);border-radius:28px;background:linear-gradient(122deg,#0b1b27 5%,#07141e 70%);box-shadow:0 38px 90px rgba(0,0,0,.32),inset 0 1px rgba(198,247,255,.08)}
.job-hero-copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(34px,5vw,76px)}
.job-kicker{display:inline-flex;align-items:center;gap:12px;color:#80e3f9;font-size:11px;font-weight:800;letter-spacing:.19em;text-transform:uppercase}
.job-kicker::before{content:"";width:24px;height:1px;background:#4adbf6}
.job-hero h1{max-width:15ch;margin:24px 0 16px;font-size:clamp(40px,4.6vw,69px);line-height:1.06;letter-spacing:-.055em}
.job-hero p{max-width:52ch;margin:0;color:#bfd2db;font-size:clamp(15px,1.45vw,18px);line-height:1.65}
.job-facts{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.job-facts span{padding:7px 11px;border:1px solid rgba(105,217,249,.2);border-radius:999px;color:#bceaf5;background:rgba(68,176,220,.07);font-size:11px;font-weight:700}
.job-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:32px}
.job-primary{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:13px 26px;border-radius:999px;background:linear-gradient(105deg,#24d2ee,#168ed2);box-shadow:0 13px 36px rgba(0,173,224,.27),inset 0 1px rgba(255,255,255,.4);color:#03161c!important;font-size:14px;font-weight:800;text-decoration:none;overflow:hidden;transition:transform .25s,box-shadow .25s}
.job-primary::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 28%,rgba(255,255,255,.36) 49%,transparent 66%);transform:translateX(-150%);transition:transform .7s}
.job-primary:hover{transform:translateY(-3px);box-shadow:0 18px 44px rgba(0,187,236,.38)}
.job-primary:hover::after{transform:translateX(150%)}
.job-tertiary{color:#b6e9f6!important;font-size:13px;font-weight:700;text-decoration:none;border-bottom:1px solid rgba(124,228,250,.45);padding-bottom:3px}
.job-tertiary:hover{color:#fff!important}
.job-visual{position:relative;display:grid;place-items:center;overflow:hidden;min-height:400px;border-left:1px solid rgba(126,227,249,.12);background:radial-gradient(circle at 50% 45%,rgba(22,167,211,.15),transparent 55%),linear-gradient(145deg,#06121c,#0a1b28)}
.job-visual::before{content:"";position:absolute;width:min(75%,410px);aspect-ratio:1;border:1px solid rgba(122,223,247,.15);border-radius:50%;box-shadow:0 0 0 55px rgba(81,204,245,.025),0 0 0 110px rgba(81,204,245,.018);animation:job-orbit 9s ease-in-out infinite alternate}
.job-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(125deg,transparent 20%,rgba(102,212,249,.06) 51%,transparent 78%);transform:translateX(-110%);animation:job-scan 10s linear infinite}
.job-visual svg{position:relative;z-index:1;width:min(70%,350px);filter:drop-shadow(0 20px 55px rgba(4,193,246,.18));animation:job-float 6s ease-in-out infinite alternate}
.job-visual-label{position:absolute;z-index:2;bottom:32px;left:32px;right:32px;color:#8acddd;font-size:10px;font-weight:800;letter-spacing:.22em;text-align:center;text-transform:uppercase}
@keyframes job-orbit{to{transform:scale(1.13) rotate(10deg);opacity:.62}}
@keyframes job-scan{to{transform:translateX(110%)}}
@keyframes job-float{to{transform:translateY(-12px)}}
.job-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,.8fr);gap:22px;margin-top:30px}
.job-note,.job-preview{border:1px solid var(--job-edge);border-radius:22px;background:linear-gradient(145deg,rgba(17,34,46,.94),rgba(8,19,28,.98));padding:28px 30px}
.job-note h2,.job-preview h2{margin:7px 0 12px;font-size:clamp(22px,2vw,29px);letter-spacing:-.035em}
.job-note p{margin:0;color:#b9cbd5;font-size:14px;line-height:1.75}
.job-note .job-note-small{margin-top:12px;color:#83b8c8;font-size:12px}
.job-preview ul{list-style:none;display:grid;gap:11px;margin:15px 0 0;padding:0}
.job-preview li{display:flex;align-items:flex-start;gap:10px;color:#cce0e8;font-size:13px;line-height:1.55}
.job-preview li::before{content:"↗";flex:none;color:#55d9f8;font-weight:800}
.job-application{display:grid;grid-template-columns:270px minmax(0,1fr);gap:28px;align-items:start;margin-top:54px;scroll-margin-top:100px}
.job-aside{position:sticky;top:104px;padding:24px 0}
.job-aside .job-kicker{font-size:10px}
.job-aside h2{max-width:11ch;margin:17px 0;color:#fff;font-size:clamp(28px,2.5vw,38px);line-height:1.13;letter-spacing:-.04em}
.job-aside p{color:#afc9d3;font-size:13px;line-height:1.7}
.job-aside-steps{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 26px;padding:0;list-style:none}
.job-aside-steps li{padding:6px 10px;border:1px solid rgba(97,210,242,.19);border-radius:999px;color:#8fd0e0;background:rgba(37,142,191,.07);font-size:10px;font-weight:700}
.job-aside a{color:#a5e7f5;font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:5px}
.job-form-shell{overflow:hidden;border:1px solid rgba(111,225,250,.32);border-radius:24px;background:#0b151e;box-shadow:0 30px 85px rgba(0,0,0,.32),0 0 55px rgba(15,171,214,.08)}
.job-form-top{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:17px 22px;border-bottom:1px solid rgba(115,218,247,.2);background:linear-gradient(90deg,rgba(22,160,206,.13),rgba(12,22,32,.7));color:#aee9f5;font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.job-form-top span:last-child{color:#7baebf}
.job-form-intro{padding:25px 36px 0}
.job-form-intro h2{margin:0 0 7px;font-size:24px;letter-spacing:-.035em}
.job-form-intro p{margin:0;color:#a9c2cc;font-size:13px;line-height:1.65}
.job-form-frame{display:block;width:100%;min-height:850px;border:0;background:#0b151e;color-scheme:dark}
.job-form-bottom{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:16px 25px;border-top:1px solid rgba(115,218,247,.16);color:#86aebd;font-size:11px}
.job-form-bottom a{color:#95e4f4;text-decoration:underline;text-underline-offset:4px}
.job-footer{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:30px max(24px,calc((100vw - 1240px)/2));border-top:1px solid rgba(112,222,250,.12);background:#03090e;color:#789ca9;font-size:12px}
.job-footer a{color:#a8dcea;text-decoration:none}
.job-footer a:hover{text-decoration:underline}
.ofa-jobs-curated .ofa-job-card{border-color:rgba(89,213,246,.26)!important;background:radial-gradient(circle at 105% -5%,rgba(46,191,231,.18),transparent 46%),linear-gradient(155deg,#11242f,#07121b)!important;box-shadow:0 22px 50px rgba(0,0,0,.2),inset 0 1px rgba(207,247,255,.08)!important}
.ofa-jobs-curated .ofa-job-card::before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,#4de0fa,transparent);opacity:.36;transition:opacity .3s}
.ofa-jobs-curated .ofa-job-card:hover::before{opacity:1}
.ofa-jobs-curated .ofa-job-card a{background:linear-gradient(110deg,#17c9e8,#168dc8)!important;color:#041722!important;border:0!important;box-shadow:0 10px 24px rgba(6,166,209,.24)!important;transition:transform .23s,box-shadow .23s!important}
.ofa-jobs-curated .ofa-job-card a:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(6,187,227,.34)!important}
@media(max-width:900px){.job-hero{grid-template-columns:1fr}.job-visual{min-height:300px;border-left:0;border-top:1px solid rgba(126,227,249,.12)}.job-intro{grid-template-columns:1fr}.job-application{grid-template-columns:1fr}.job-aside{position:static;padding:0}.job-aside h2{max-width:none}.job-aside-steps{margin-bottom:8px}}
@media(max-width:600px){.job-nav{min-height:68px;padding:11px 20px}.job-nav img{width:128px}.job-nav-links a:not(.job-nav-cta){display:none}.job-nav-links .job-nav-cta{padding:9px 12px;font-size:11px}.job-wrap{width:min(100% - 28px,1240px)}.job-breadcrumb{font-size:10px}.job-hero{margin-top:16px;border-radius:21px}.job-hero-copy{padding:34px 25px}.job-hero h1{font-size:clamp(36px,11vw,49px)}.job-visual{min-height:255px}.job-visual svg{width:min(58%,245px)}.job-visual-label{bottom:20px;font-size:9px}.job-note,.job-preview{padding:22px}.job-application{margin-top:42px}.job-form-top{padding:15px 18px;font-size:9px}.job-form-intro{padding:23px 20px 0}.job-form-frame{min-height:720px}.job-form-bottom{padding:15px 20px}.job-footer{padding:25px 20px}}
@media(prefers-reduced-motion:reduce){.job-visual::before,.job-visual::after,.job-visual svg{animation:none}.job-primary,.job-primary::after,.ofa-jobs-curated .ofa-job-card a{transition:none}}
