/* Jobs landing page only: presentation, without changes to hiring or search data. */
.jobs-premium .jobs-marketplace {
  overflow: hidden;
  background: radial-gradient(ellipse at 86% 32%,#f1def8 0,transparent 40%),radial-gradient(ellipse at 66% 10%,#fff0d9 0,transparent 40%),#fdfbff;
  border-bottom: 1px solid #eee3f2;
}
.jobs-premium .jobs-marketplace::before {
  background-image: linear-gradient(#7c298004 1px,transparent 1px),linear-gradient(90deg,#7c298004 1px,transparent 1px);
  background-size: 64px 64px;
  opacity: 1;
}
.jobs-premium .jobs-marketplace .hero-grid { grid-template-columns:minmax(0,1.08fr) minmax(0,1fr); gap:68px; min-height:0; padding-block:72px 46px; align-items:center; }
.jobs-premium .jobs-marketplace .pill { font-size:10px; letter-spacing:.13em; padding:9px 13px; border-color:#e7d4ef; box-shadow:0 4px 16px #652d7510; }
.jobs-premium .jobs-marketplace h1 { font-size:clamp(44px,4.1vw,66px); line-height:1.1; letter-spacing:-.055em; margin:24px 0; }
.jobs-premium .jobs-marketplace h1 em { display:inline; color:#900095; background:linear-gradient(100deg,#85008e 25%,#b3219d 74%,#dd8060); background-clip:text; -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
.jobs-premium .jobs-marketplace .hero-copy>p { font-size:16px; line-height:1.9; max-width:560px; margin-bottom:26px; color:#74667f; }
.jm-search-heading { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:11px; font-size:11px; }
.jm-search-heading>span { font-weight:600; color:#64516f; }
.jm-search-heading>a { color:#88008d; font-weight:500; }
.jm-search-heading>a>span { display:inline-block; margin-left:7px; transition:transform .2s; }
.jm-search-heading>a:hover>span { transform:translate(2px,-2px); }
.jobs-premium .jobs-marketplace .search-box { max-width:100%; border-color:#e2cbe9; border-radius:18px; padding:10px; box-shadow:0 12px 40px #6727780d,0 2px 5px #67277805; }
.jobs-premium .jobs-marketplace .search-box label { padding:8px 9px; }
.jobs-premium .jobs-marketplace .search-box input { font-size:14px; }
.jobs-premium .jobs-marketplace .search-box .button { background:linear-gradient(110deg,#a000a1,#730078); border-color:#8a008d; box-shadow:0 5px 14px #85008b1c; }
.jobs-premium .jobs-marketplace .popular { font-size:11px; margin-top:15px; gap:9px 16px; }
.jobs-premium .jobs-marketplace .hero-metrics { margin-top:26px; padding-top:22px; gap:24px; border-color:#e9ddee; }
.jobs-premium .jobs-marketplace .hero-metrics b { font-size:14px; }
.jobs-premium .jobs-marketplace .hero-metrics small { font-size:10px; }
.jobs-premium .jobs-marketplace .hero-metrics>div { gap:9px; }
.jobs-premium .jobs-marketplace .hero-metrics>div>span { width:34px; height:34px; border-radius:10px; }
.jm-visual-column { min-width:0; }
.jobs-premium .jobs-marketplace .career-stage.jm-visual { width:100%; max-width:640px; height:auto; min-height:560px; aspect-ratio:1.03; margin:0 auto; padding:0; border:0; background:none; border-radius:0; box-shadow:none; perspective:none; }
.jm-visual-grid { position:absolute; inset:11% 1% 2%; border:1px solid #dec0e766; border-radius:46% 46% 26px 26px; background:radial-gradient(ellipse at 50% 30%,#f4e6fb 0,#ead3f08c 48%,#fff5eb 100%); box-shadow:inset 0 0 60px #fff9; z-index:-2; }
.jm-visual-grid::after { content:""; position:absolute; inset:0; border-radius:inherit; background-image:radial-gradient(#a86eb652 .9px,transparent .9px); background-size:20px 20px; mask-image:linear-gradient(#000,transparent 84%); -webkit-mask-image:linear-gradient(#000,transparent 84%); }
.jm-orbit { position:absolute; left:50%; top:43%; border:1px solid #a967bc36; border-radius:50%; pointer-events:none; z-index:-1; animation:jm-orbit 36s linear infinite; animation-play-state:paused; }
.jm-orbit-outer { width:96%; aspect-ratio:1; transform:translate(-50%,-50%) rotate(-25deg); }
.jm-orbit-inner { width:77%; aspect-ratio:1; border-style:dashed; border-color:#e49c6047; animation-direction:reverse; animation-duration:48s; }
.jm-orbit>span { position:absolute; top:15%; left:14%; width:8px; height:8px; border-radius:50%; background:#a341b4; box-shadow:0 0 0 6px #bc77cc17; }
.jm-orbit-inner>span { background:#f9a139; box-shadow:0 0 0 5px #f9a13918; }
.jm-network { position:absolute; inset:6% -12% 0; opacity:.36; overflow:hidden; pointer-events:none; z-index:-1; }
.jm-network>img { display:block; width:100%; height:100%; object-fit:cover; }
.jm-visual-heading { position:absolute; top:10px; left:26px; right:20px; display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:9px; letter-spacing:.16em; color:#846192; }
.jm-signal { display:flex; align-items:end; gap:3px; height:13px; }
.jm-signal i { width:3px; height:6px; border-radius:2px; background:#a147b4; }
.jm-signal i:nth-child(2) { height:9px; opacity:.65; }
.jm-signal i:nth-child(3) { height:13px; background:#ee9e3d; }
.jobs-premium .jobs-marketplace .jm-visual>img.jm-people { position:absolute; z-index:2; bottom:25px; left:0; display:block; width:100%; max-width:100%; height:auto; filter:drop-shadow(0 15px 17px #6d347b13); }
.jm-node { position:absolute; z-index:3; display:flex; align-items:center; gap:11px; max-width:90%; padding:13px 17px; border:1px solid #f6e9fb; border-radius:16px; background:#fffffff2; color:#452452; box-shadow:0 10px 30px #5b256614,inset 0 1px 0 #fff; font-size:11px; font-weight:500; animation:jm-float 7s ease-in-out infinite; animation-play-state:paused; }
.jm-node-icon { display:grid; place-items:center; flex-shrink:0; width:34px; height:34px; border-radius:11px; background:#f5e9fa; color:#91009a; }
.jm-node-icon svg { width:20px; height:20px; }
.jm-node small { display:block; color:#9984a4; font-size:8px; font-weight:500; letter-spacing:.13em; }
.jm-node b { display:block; font-size:13px; font-weight:600; }
.jm-node-company { top:63px; left:-6px; transform:rotate(-4deg); }
.jm-node-tech { top:74px; right:-12px; transform:rotate(5deg); animation-delay:-2s; }
.jm-node-tech .jm-node-icon { background:#fff2e2; color:#c96d16; }
.jm-node-business { right:-8px; bottom:88px; padding:11px 14px; transform:rotate(3deg); animation-delay:-4s; }
.jm-node-business .jm-node-icon { width:29px; height:29px; }
.jm-next-card { position:absolute; z-index:4; bottom:7px; left:-17px; width:249px; padding:21px 23px 19px; border:1px solid #6e3881; border-radius:19px; background:linear-gradient(135deg,#4a175d,#2c103b); color:white; box-shadow:0 17px 35px #42244b25; transform:rotate(-4deg); }
.jm-next-label { display:flex; align-items:center; gap:7px; color:#e5b9ed; font-size:8px; letter-spacing:.12em; }
.jm-next-label i { width:5px; height:5px; border-radius:50%; background:#ffb354; box-shadow:0 0 0 4px #ffb35417; }
.jm-next-card strong { display:block; margin:13px 0 16px; font-size:22px; line-height:1.25; font-weight:550; letter-spacing:-.04em; }
.jm-next-card>div { display:flex; align-items:center; gap:9px; font-size:9px; color:#d3bbdd; }
.jm-next-card>div i { font-style:normal; color:#b481c3; }
.jm-next-arrow { position:absolute; top:17px; right:19px; color:#ffb559; font-size:19px; font-weight:400; }
.jm-visual-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:22px 9px 0; color:#927b9c; font-size:9px; }
.jm-motion-toggle { display:inline-flex; flex-shrink:0; align-items:center; gap:6px; padding:5px 8px; border:1px solid #d9c1e4; border-radius:7px; background:#ffffffa8; color:#72527e; font-size:9px; line-height:1.5; }
.jm-motion-toggle:hover { background:#fff; color:#85008d; }
.jobs-premium .jobs-marketplace .jm-paths { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:0 0 34px; gap:18px; }
.jm-paths>a { display:flex; align-items:center; gap:17px; min-width:0; padding:22px 23px; border:1px solid #e9dced; border-radius:16px; background:#ffffffc7; box-shadow:0 4px 8px #50276302; transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease; }
.jm-paths>a:hover { transform:translateY(-4px); border-color:#cfa8dc; box-shadow:0 14px 30px #5027630c; }
.jm-path-icon { display:grid; place-items:center; width:43px; height:43px; flex-shrink:0; border-radius:13px; color:#94129b; background:#f5ecf9; }
.jm-path-icon svg { width:21px; height:21px; }
.jm-paths>a:nth-child(2) .jm-path-icon { background:#fff3e7; color:#c57927; }
.jm-paths b { display:block; font-size:14px; font-weight:600; line-height:1.6; color:#3c2448; }
.jm-paths small { display:block; margin-top:2px; font-size:10px; color:#897491; line-height:1.6; }
.jm-path-arrow { margin-left:auto; font-size:21px; font-weight:400; color:#b995c5; }
.jobs-marketplace[data-motion="running"] .jm-orbit,.jobs-marketplace[data-motion="running"] .jm-node { animation-play-state:running; }
@keyframes jm-orbit { from { transform:translate(-50%,-50%) rotate(-25deg); } to { transform:translate(-50%,-50%) rotate(335deg); } }
@keyframes jm-float { 0%,100% { translate:0 0; } 50% { translate:0 -8px; } }
@media(max-width:1200px) {
  .jobs-premium .jobs-marketplace .hero-grid { gap:42px; grid-template-columns:minmax(0,1.08fr) minmax(0,1fr); padding-top:58px; }
  .jobs-premium .jobs-marketplace h1 { font-size:clamp(40px,4.4vw,54px); }
  .jobs-premium .jobs-marketplace .search-box { grid-template-columns:1fr; }
  .jobs-premium .jobs-marketplace .search-box label+label { border-left:0; border-top:1px solid var(--line); }
  .jobs-premium .jobs-marketplace .career-stage.jm-visual { min-height:485px; }
  .jm-node { padding:11px 12px; gap:8px; font-size:10px; }
  .jm-node-company { left:0; top:83px; }
  .jm-node-tech { right:0; top:32px; }
  .jm-node-business { right:0; bottom:100px; font-size:9px; }
  .jm-next-card { left:0; width:222px; padding:18px; }
  .jm-next-card strong { font-size:20px; }
  .jm-paths>a { padding:18px 16px; gap:12px; }
  .jm-paths small { max-width:170px; }
  .jm-visual-footer { flex-wrap:wrap; }
}
@media(max-width:960px) {
  .jobs-premium .jobs-marketplace .hero-grid { grid-template-columns:minmax(0,1fr); padding-block:44px 40px; gap:36px; }
  .jobs-premium .jobs-marketplace .hero-copy { width:100%; max-width:720px; margin-inline:auto; }
  .jobs-premium .jobs-marketplace h1 { font-size:clamp(42px,6.3vw,62px); }
  .jobs-premium .jobs-marketplace .search-box { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
  .jobs-premium .jobs-marketplace .search-box label+label { border-top:0; border-left:1px solid var(--line); }
  .jm-visual-column { width:min(600px,100%); margin-inline:auto; }
  .jobs-premium .jobs-marketplace .career-stage.jm-visual { min-height:0; aspect-ratio:1.07; }
  .jm-node-company { top:58px; }
  .jm-node-tech { top:74px; }
  .jm-node-business { bottom:93px; }
  .jm-visual-footer { flex-wrap:nowrap; }
  .jobs-premium .jobs-marketplace .jm-paths { gap:12px; }
  .jm-paths>a { flex-wrap:wrap; padding:19px; gap:13px; }
  .jm-paths>a>span:nth-child(2) { order:3; width:100%; }
  .jm-path-arrow { align-self:flex-start; }
  .jm-paths b { font-size:13px; }
}
@media(max-width:600px) {
  .jobs-premium .jobs-marketplace .hero-grid { padding-top:32px; gap:30px; }
  .jobs-premium .jobs-marketplace h1 { font-size:clamp(36px,8.6vw,48px); margin:21px 0; }
  .jobs-premium .jobs-marketplace .pill { font-size:8px; letter-spacing:.1em; padding:8px 10px; }
  .jobs-premium .jobs-marketplace .hero-copy>p { font-size:14px; line-height:1.85; margin-bottom:23px; }
  .jm-search-heading { font-size:10px; }
  .jobs-premium .jobs-marketplace .search-box { grid-template-columns:minmax(0,1fr); padding:9px; border-radius:15px; }
  .jobs-premium .jobs-marketplace .search-box label+label { border-left:0; border-top:1px solid var(--line); }
  .jobs-premium .jobs-marketplace .search-box .button { min-height:48px; font-size:14px; }
  .jobs-premium .jobs-marketplace .popular { font-size:10px; gap:9px 13px; }
  .jobs-premium .jobs-marketplace .hero-metrics { gap:12px 16px; padding-top:19px; margin-top:22px; }
  .jobs-premium .jobs-marketplace .hero-metrics b { font-size:12px; }
  .jobs-premium .jobs-marketplace .hero-metrics small { font-size:9px; }
  .jobs-premium .jobs-marketplace .hero-metrics>div>span { width:29px; height:29px; }
  .jobs-premium .jobs-marketplace .career-stage.jm-visual { min-height:350px; aspect-ratio:1; }
  .jm-visual-heading { left:8px; right:7px; top:8px; font-size:7px; letter-spacing:.12em; }
  .jm-node { padding:9px 10px; border-radius:12px; gap:7px; font-size:9px; }
  .jm-node-icon { width:28px; height:28px; border-radius:9px; }
  .jm-node-icon svg { width:17px; height:17px; }
  .jm-node small { font-size:6px; }
  .jm-node b { font-size:11px; }
  .jm-node-company { top:41px; left:0; }
  .jm-node-tech { top:46px; right:0; }
  .jm-node-business { bottom:107px; right:0; padding:8px; font-size:8px; }
  .jm-node-business .jm-node-icon { width:22px; height:22px; }
  .jm-next-card { bottom:7px; left:3px; width:194px; padding:15px 17px; border-radius:15px; }
  .jm-next-card strong { font-size:18px; margin-block:11px 13px; }
  .jm-next-label { font-size:6px; }
  .jm-next-card>div { font-size:8px; gap:8px; }
  .jm-next-arrow { font-size:16px; top:13px; right:14px; }
  .jm-visual-footer { padding:17px 1px 0; font-size:8px; gap:8px; align-items:flex-start; }
  .jm-visual-footer>span { max-width:185px; }
  .jm-motion-toggle { font-size:8px; }
  .jobs-premium .jobs-marketplace .jm-paths { grid-template-columns:1fr; padding-bottom:27px; gap:10px; }
  .jm-paths>a { flex-wrap:nowrap; gap:14px; padding:17px; border-radius:13px; }
  .jm-paths>a>span:nth-child(2) { order:initial; width:auto; }
  .jm-paths small { max-width:none; }
  .jm-path-arrow { align-self:center; }
}
@media(prefers-reduced-motion:reduce) {
  .jobs-marketplace .jm-orbit,.jobs-marketplace .jm-node { animation:none; }
  .jobs-marketplace .jm-network { display:none; }
  .jm-paths>a,.jm-search-heading>a>span { transition:none; }
}
@media(forced-colors:active) {
  .jobs-premium .jobs-marketplace h1 em { color:CanvasText; -webkit-text-fill-color:CanvasText; background:none; }
  .jm-node,.jm-next-card,.jm-paths>a { border:1px solid CanvasText; }
  .jm-network,.jm-orbit,.jm-visual-grid { display:none; }
}
