
:root{
  --ink:#17141d;
  --muted:#77717f;
  --line:#e8e5eb;
  --paper:#ffffff;
  --canvas:#f7f6f8;
  --plum:#5b2383;
  --plum-dark:#331344;
  --plum-050:#f5eff9;
  --plum-100:#eadff1;
  --shadow:0 26px 80px rgba(35,22,43,.08);
  --shadow-strong:0 30px 90px rgba(35,22,43,.14);
  --radius:22px;
  --font-display:'Fraunces',Georgia,serif;
  --font-body:'Inter',ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --font-mono:'IBM Plex Mono',ui-monospace,SFMono-Regular,monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--canvas);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased}
button,input,select{font:inherit} button{cursor:pointer} a{text-decoration:none;color:inherit}
.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.hidden{display:none!important}
:focus-visible{outline:2px solid var(--plum);outline-offset:3px;border-radius:7px}

/* Header */
.topbar{position:sticky;top:0;z-index:60;background:rgba(247,246,248,.9);backdrop-filter:blur(18px);border-bottom:1px solid rgba(232,229,235,.92);transition:box-shadow .25s ease,background .25s ease}
.topbar.scrolled{box-shadow:0 10px 34px rgba(35,22,43,.07);background:rgba(247,246,248,.96)}
.masthead-strip{border-bottom:1px solid var(--line);font-family:var(--font-mono)}
.masthead-strip .container{height:32px;display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:10px;color:var(--muted);letter-spacing:.25px}
.masthead-strip b{color:var(--plum);font-weight:600}
.nav-shell{height:76px;display:flex;align-items:center;gap:38px}
.brand{display:flex;align-items:center;gap:10px;min-width:max-content}
.brand-mark{width:39px;height:39px;border-radius:11px;display:grid;place-items:center;background:var(--ink);color:#fff;font-family:var(--font-display);font-size:20px;font-weight:680;box-shadow:0 8px 20px rgba(23,20,29,.12);transition:transform .22s cubic-bezier(.2,.8,.2,1)}
.brand:hover .brand-mark{transform:rotate(-5deg) scale(1.04)}
.brand-word{font-family:var(--font-display);font-size:22px;font-weight:560;letter-spacing:-.4px}.brand-word span{color:var(--plum)}.brand-word small{font-family:var(--font-body);font-size:11px;color:#8d8792;margin-left:2px;font-weight:700}
.desktop-nav{margin-left:auto;display:flex;gap:30px;font-size:13px;font-weight:650;color:#5f5966}.desktop-nav a{transition:color .16s ease}.desktop-nav a:hover{color:var(--plum)}
.nav-cta{display:flex;align-items:center;gap:8px}.text-button,.solid-button,.inverse-button,.search-button,.filter-button,.load-more,.map-reset,.quick-chip,.menu-button{border:0}
.text-button{background:transparent;padding:10px 12px;font-weight:750;font-size:13px;color:#5d5763}
.solid-button{background:var(--ink);color:#fff;border-radius:11px;padding:12px 17px;font-size:13px;font-weight:800;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.solid-button:hover{background:var(--plum-dark);transform:translateY(-1px);box-shadow:0 12px 26px rgba(51,19,68,.22)}
.menu-button{display:none;width:42px;height:42px;border-radius:11px;background:var(--paper);border:1px solid var(--line);place-items:center;color:var(--ink)}.menu-button svg{width:19px}
.mobile-menu{display:none;border-top:1px solid var(--line);padding:10px 0 16px}.mobile-menu.open{display:grid}.mobile-menu a{padding:11px 0;font-size:13px;font-weight:700;color:#5f5966}

/* Hero */
.hero{position:relative;overflow:hidden;padding:58px 0 34px;background:linear-gradient(180deg,#fbfafc 0%,var(--canvas) 100%)}
.hero::after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-210px;top:-280px;background:radial-gradient(circle,rgba(91,35,131,.12),rgba(91,35,131,0) 68%);pointer-events:none}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.52fr) minmax(300px,.72fr);gap:58px;align-items:start;position:relative;z-index:1}
.eyebrow{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-mono);color:var(--plum);font-size:10.5px;font-weight:600;letter-spacing:.75px;text-transform:uppercase}.eyebrow::before{content:"";width:18px;height:1px;background:var(--plum)}
.hero h1{font-family:var(--font-display);font-size:clamp(54px,6.6vw,82px);line-height:.98;letter-spacing:-2.6px;margin:20px 0 22px;max-width:790px;font-weight:560}.hero h1 em{font-style:italic;color:var(--plum);font-weight:520}
.hero-copy>p{font-size:17px;line-height:1.68;color:#6f6975;max-width:630px;margin:0}
.search-shell{margin-top:32px;display:grid;grid-template-columns:1.35fr .9fr auto;background:#fff;border:1px solid #e1dde4;border-radius:17px;padding:7px;box-shadow:var(--shadow);max-width:900px;transition:border-color .22s ease,box-shadow .22s ease}.search-shell:focus-within{border-color:#cab8d6;box-shadow:var(--shadow-strong)}
.search-field{height:54px;display:flex;align-items:center;gap:11px;padding:0 15px;border-right:1px solid var(--line);position:relative}.search-field svg{width:18px;color:#8d8792;flex:0 0 auto}.search-field input,.search-field select{width:100%;border:0;outline:0;background:transparent;color:var(--ink);font-size:14px}.search-field input::placeholder{color:#99939d}.search-field select{appearance:none}
.search-button{border-radius:11px;background:var(--plum);color:#fff;font-size:13px;font-weight:800;padding:0 22px;min-width:126px;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.search-button:hover{background:#4c1d70;transform:translateY(-1px);box-shadow:0 10px 24px rgba(91,35,131,.24)}
.quick-searches{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:14px;font-size:11px;color:#8d8792}.quick-searches>span{font-family:var(--font-mono);font-size:9.5px;text-transform:uppercase;letter-spacing:.45px}.quick-chip{background:rgba(255,255,255,.7);border:1px solid var(--line);color:#665f6b;border-radius:999px;padding:6px 9px;font-size:10.5px;font-weight:700;transition:.16s ease}.quick-chip:hover{border-color:#cdbbd8;color:var(--plum);background:#fff}
.ticker{display:flex;gap:0;margin-top:24px;border-top:1px solid var(--line);padding-top:18px;max-width:900px}.ticker div{flex:1;padding-right:18px}.ticker div:not(:last-child){border-right:1px solid var(--line);margin-right:18px}.ticker strong{display:block;font-family:var(--font-mono);font-size:17px;font-weight:600}.ticker span{display:block;margin-top:4px;font-size:10.5px;color:#918b95}
.hero-note{border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.84);padding:27px 25px;box-shadow:var(--shadow);backdrop-filter:blur(10px);position:relative;overflow:hidden}.hero-note::before{content:"";position:absolute;width:150px;height:150px;right:-62px;top:-72px;border-radius:50%;background:var(--plum-050)}.hero-note>*{position:relative}.hero-note .number{font-family:var(--font-mono);font-size:10px;color:#9a949e}.hero-note .tag{display:block;margin-top:24px;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.75px;color:var(--plum);font-weight:600}.hero-note h2{font-family:var(--font-display);font-size:25px;line-height:1.23;letter-spacing:-.6px;margin:12px 0 10px;font-weight:560}.hero-note p{color:#7a7380;font-size:13px;line-height:1.62;margin:0}.signal-bars{height:74px;display:flex;align-items:flex-end;gap:7px;margin-top:24px}.signal-bars i{display:block;flex:1;max-width:22px;background:linear-gradient(180deg,#6f398f,#d4c1df);border-radius:5px 5px 2px 2px;transition:filter .18s ease}.hero-note:hover .signal-bars i{filter:brightness(1.06)}

/* Vacancy strip */
.opportunity{padding:24px 0 58px}.opp-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px}.opp-head h3{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.8px;color:var(--muted);font-weight:600;margin:0}.opp-head span{font-family:var(--font-mono);font-size:10px;color:var(--muted)}
.opp-strip{display:flex;min-height:68px;border-radius:15px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line);background:#fff}.opp-block{position:relative;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;border:0;color:#fff;padding:10px 11px;font-family:var(--font-mono);font-size:9.5px;font-weight:600;text-align:left;transition:filter .15s ease,transform .15s ease;min-width:86px}.opp-block:hover{filter:brightness(1.08);z-index:2;transform:scaleY(1.035)}.opp-block b{font-size:12px;margin-bottom:2px}.opp-block:nth-child(1){background:#4a176b}.opp-block:nth-child(2){background:#5b2383}.opp-block:nth-child(3){background:#713a92}.opp-block:nth-child(4){background:#8954a5}.opp-block:nth-child(5){background:#a272b8}.opp-block:nth-child(6){background:#b78fc7}

/* Marketplace */
.marketplace{background:#fff;padding:78px 0 96px;border-top:1px solid var(--line);border-radius:32px 32px 0 0}.market-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:32px}.section-index{font-family:var(--font-mono);font-size:10px;letter-spacing:.85px;color:#8d8793;font-weight:600;text-transform:uppercase}.market-head h2,.category-intro h2,.benefits-head h2{font-family:var(--font-display);font-size:38px;letter-spacing:-1.2px;margin:9px 0 0;font-weight:560}.market-actions{display:flex;gap:7px}.filter-button{background:transparent;color:#716b76;border:1px solid #e6e2e8;border-radius:999px;padding:9px 14px;font-size:11.5px;font-weight:750;transition:.17s ease}.filter-button:hover:not(.active){border-color:#c9bcd2;color:var(--plum)}.filter-button.active{background:var(--ink);color:#fff;border-color:var(--ink)}
.market-grid{display:grid;grid-template-columns:340px minmax(0,1fr);gap:58px;align-items:start}.map-column{position:sticky;top:122px;background:linear-gradient(180deg,#fbfafc,#fff);border:1px solid var(--line);border-radius:24px;padding:22px 18px 16px;box-shadow:0 18px 55px rgba(35,22,43,.055)}.map-copy{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.map-copy p{font-family:var(--font-display);font-size:19px;font-weight:560;margin:0}.map-copy span{font-size:10.5px;color:#88818d;max-width:135px;text-align:right;line-height:1.45}.map-stage{position:relative;margin-top:14px;display:flex;justify-content:center}.map-stage svg{width:100%;height:470px;overflow:visible;filter:drop-shadow(0 15px 15px rgba(39,18,49,.08))}.district{stroke:#fff;stroke-width:1.2;cursor:pointer;transition:filter .18s ease,opacity .18s ease,stroke-width .18s ease,transform .18s ease}.district:hover{filter:brightness(.82);stroke:#2d1b38;stroke-width:2;transform:translateY(-1px)}.district.selected{stroke:#211126;stroke-width:2.6;filter:drop-shadow(0 4px 4px rgba(20,10,24,.18))}.district.dimmed{opacity:.28}.map-tooltip{position:fixed;z-index:100;pointer-events:none;opacity:0;transform:translate(-50%,-115%);background:#17141d;color:#fff;border-radius:9px;padding:8px 10px;box-shadow:0 12px 30px rgba(20,14,24,.22);font-size:11px;white-space:nowrap;transition:opacity .08s ease}.map-tooltip.show{opacity:1}.map-reset{margin:4px auto 0;display:block;background:transparent;color:var(--plum);font-size:11px;font-weight:800;padding:8px}
.results-column{min-width:0}.results-topline{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:4px}.result-count{margin:0;font-size:14px}.result-count strong{font-family:var(--font-display);font-size:26px;letter-spacing:-.8px}.results-topline>div>span{display:block;color:#8c8591;font-size:11px;margin-top:4px}.sort-control{display:flex;align-items:center;gap:8px;color:#8b8490;font-size:11px}.sort-control select{border:0;background:transparent;color:#3a343e;font-weight:750;outline:0}
.job-list{display:grid}.job-card{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:17px;padding:22px 5px;border-bottom:1px solid var(--line);transition:padding .17s ease,background .17s ease,box-shadow .17s ease}.job-card:hover{background:#faf9fb;padding-left:13px;padding-right:13px;box-shadow:inset 0 0 0 1px rgba(91,35,131,.055)}.company-avatar{width:48px;height:48px;border-radius:12px;border:1px solid #e5e0e8;background:var(--plum-050);display:grid;place-items:center;font-family:var(--font-mono);font-weight:600;font-size:11px;color:var(--plum)}.job-card h3{margin:0;font-size:16px;letter-spacing:-.25px;transition:color .15s ease}.job-card:hover h3{color:var(--plum-dark)}.company-name{font-size:12px;color:#655f69;font-weight:650;margin-top:5px}.job-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;color:#88818d;font-size:11px}.job-meta span{display:inline-flex;align-items:center;gap:8px}.job-meta span:not(:last-child)::after{content:"";width:3px;height:3px;border-radius:50%;background:#b8b2bb}.job-tags{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}.job-tags i{font-style:normal;background:#f4f1f5;border-radius:6px;padding:5px 7px;font-size:10px;color:#67606b;font-weight:700}.job-side{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.salary{font-family:var(--font-mono);font-size:11.5px;font-weight:600;white-space:nowrap}.posted{font-size:10px;color:#99939d}.save-button{width:31px;height:31px;border-radius:9px;border:1px solid #e5e1e7;background:#fff;display:grid;place-items:center;color:#756e79;transition:transform .18s cubic-bezier(.34,1.56,.64,1),color .18s ease,border-color .18s ease,background .18s ease}.save-button:hover,.save-button.saved{color:var(--plum);border-color:#cab8d6;background:#f8f2fb}.save-button.saved svg path{fill:var(--plum);stroke:var(--plum)}.save-button svg{width:14px;height:14px}.save-button.pulse{animation:save-pop .38s cubic-bezier(.34,1.56,.64,1)}@keyframes save-pop{0%{transform:scale(1)}45%{transform:scale(1.28)}100%{transform:scale(1)}}
.load-more{margin:25px auto 0;display:block;background:#fff;border:1px solid #dfdbe2;border-radius:11px;padding:11px 18px;font-size:12px;font-weight:800;color:#514b56;transition:.17s ease}.load-more:hover{border-color:#bca9c8;color:var(--plum);transform:translateY(-1px)}.load-more.is-loading{color:#b4adba;pointer-events:none}
.empty-state{padding:42px 0;color:#7e7783;font-size:13px}.empty-state button{margin-left:8px;border:0;background:transparent;color:var(--plum);font-weight:800;cursor:pointer}

/* Categories */
.categories{padding:96px 0;background:var(--canvas);border-top:1px solid var(--line)}.category-layout{display:grid;grid-template-columns:310px 1fr;gap:76px}.category-intro p{color:#78717d;font-size:14px;line-height:1.65;max-width:280px}.category-list{border-top:1px solid #dcd7df}.category-row{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;padding:20px 0;border-bottom:1px solid #dcd7df;cursor:pointer}.category-index{font-family:var(--font-mono);font-size:10px;color:#9d96a1}.category-name{font-family:var(--font-display);font-size:19px;font-weight:560;transition:.15s ease;display:inline-block}.category-row:hover .category-name{transform:translateX(6px);color:var(--plum)}.category-count{font-family:var(--font-mono);font-size:10.5px;color:#8f8894}

/* Added premium value section */
.benefits{padding:0 0 96px;background:var(--canvas)}.benefits-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:26px}.benefits-head p{max-width:420px;margin:0;color:#77717f;font-size:13px;line-height:1.65}.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.benefit-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;min-height:180px;box-shadow:0 12px 40px rgba(35,22,43,.045);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.benefit-card:hover{transform:translateY(-3px);box-shadow:0 22px 55px rgba(35,22,43,.08);border-color:#d9cce2}.benefit-icon{width:38px;height:38px;border-radius:11px;background:var(--plum-050);display:grid;place-items:center;color:var(--plum);font-family:var(--font-mono);font-size:11px;font-weight:600}.benefit-card h3{font-family:var(--font-display);font-size:20px;font-weight:560;margin:20px 0 8px}.benefit-card p{margin:0;color:#77717f;font-size:12.5px;line-height:1.6}

/* Employer */
.employer{padding:0 0 88px;background:var(--canvas)}.employer-panel{background:var(--plum-dark);color:#fff;border-radius:29px;padding:52px 56px;display:grid;grid-template-columns:1fr 380px;gap:70px;align-items:end;position:relative;overflow:hidden;box-shadow:0 28px 70px rgba(51,19,68,.16)}.employer-panel::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 90% -20%,rgba(183,143,199,.35),transparent 50%)}.employer-panel>*{position:relative}.section-index.light{color:#c9afd6}.employer h2{font-family:var(--font-display);font-size:43px;line-height:1.08;letter-spacing:-1.4px;margin:11px 0 0;font-weight:560}.employer-side p{color:#d5c7db;font-size:14px;line-height:1.65;margin:0 0 24px}.inverse-button{background:#fff;color:var(--plum-dark);border-radius:11px;padding:13px 18px;font-weight:800;font-size:12.5px;transition:transform .18s ease,box-shadow .18s ease}.inverse-button:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(0,0,0,.2)}.inverse-button span{margin-left:10px}

/* Footer */
.site-footer{background:var(--canvas);border-top:1px solid var(--line)}.footer-shell{min-height:110px;display:grid;grid-template-columns:1fr auto auto;gap:36px;align-items:center}.footer-brand .brand-mark{width:31px;height:31px;font-size:15px}.footer-brand .brand-word{font-size:17px}.footer-links{display:flex;gap:19px;font-family:var(--font-mono);font-size:10px;color:#77717c}.footer-shell>p{font-family:var(--font-mono);font-size:9.5px;color:#99939d}
.toast{position:fixed;left:50%;bottom:24px;z-index:150;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:var(--ink);color:#fff;border-radius:999px;padding:10px 15px;font-size:11px;font-weight:700;box-shadow:0 14px 38px rgba(23,20,29,.22);transition:opacity .2s ease,transform .2s ease}.toast.show{opacity:1;transform:translate(-50%,0)}
.reveal{opacity:0;transform:translateY(14px);transition:opacity .55s ease,transform .55s ease}.reveal.in{opacity:1;transform:translateY(0)}


/* Clean premium hero + advanced marketplace */
.masthead-strip,.ticker,.hero-note,.opportunity{display:none!important}
.hero{padding:72px 0 64px}.hero-grid-clean{grid-template-columns:1fr;max-width:1180px}.hero-copy-clean{max-width:980px}.hero-copy-clean .search-shell{max-width:940px}.hero-feature-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:28px;max-width:940px}.hero-feature{display:flex;gap:12px;align-items:flex-start;padding:15px 16px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.66);backdrop-filter:blur(10px)}.feature-dot{width:9px;height:9px;border-radius:50%;background:var(--plum);box-shadow:0 0 0 5px var(--plum-050);margin-top:5px;flex:0 0 auto}.hero-feature strong{display:block;font-size:12.5px}.hero-feature small{display:block;color:var(--muted);font-size:10.5px;line-height:1.45;margin-top:4px}.market-subcopy{margin:9px 0 0;color:var(--muted);font-size:12.5px;max-width:560px;line-height:1.55}.filter-button span{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;margin-left:4px;background:rgba(91,35,131,.09);font-size:9px}.filter-button.active span{background:rgba(255,255,255,.16)}.filter-rail{display:flex;align-items:end;gap:12px;border:1px solid var(--line);background:#faf9fb;border-radius:16px;padding:12px 14px;margin:-12px 0 28px}.filter-rail label{display:flex;flex-direction:column;gap:5px}.filter-rail label span{font-family:var(--font-mono);font-size:8.5px;text-transform:uppercase;letter-spacing:.55px;color:#918b95}.filter-rail select{height:36px;border:1px solid #dfdae3;border-radius:10px;background:#fff;padding:0 30px 0 10px;color:#4d4652;font-size:11px;font-weight:700;outline:none}.clear-filters,.modal-secondary{height:36px;border:1px solid #dfdae3;border-radius:10px;background:#fff;padding:0 12px;color:#5f5966;font-size:11px;font-weight:750}.clear-filters:hover,.modal-secondary:hover{border-color:#c9bcd2;color:var(--plum)}.filter-hint{margin-left:auto;align-self:center;color:#918b95;font-size:10.5px}.job-card{cursor:pointer}.job-card::after{content:'View role →';grid-column:2;font-size:10px;color:var(--plum);font-weight:800;opacity:0;transform:translateY(-3px);transition:.15s ease}.job-card:hover::after{opacity:1;transform:none}.job-modal{position:fixed;inset:0;z-index:200;display:none;place-items:center;padding:20px}.job-modal.open{display:grid}.job-modal-backdrop{position:absolute;inset:0;background:rgba(19,14,23,.5);backdrop-filter:blur(8px)}.job-modal-card{position:relative;width:min(560px,100%);background:#fff;border:1px solid var(--line);border-radius:26px;padding:30px;box-shadow:0 40px 100px rgba(20,14,24,.3);animation:modal-in .2s ease both}.modal-close{position:absolute;right:18px;top:16px;width:36px;height:36px;border:1px solid var(--line);border-radius:11px;background:#fff;font-size:22px;color:#6e6672}.job-modal h2{font-family:var(--font-display);font-size:32px;line-height:1.05;margin:10px 42px 6px 0;font-weight:560}.modal-company{margin:0;color:#655f69;font-weight:700;font-size:13px}.modal-meta,.modal-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:18px}.modal-meta span,.modal-tags i{font-style:normal;border-radius:999px;padding:7px 9px;font-size:10px;font-weight:700}.modal-meta span{background:#f4f1f5;color:#665f6b}.modal-tags i{background:var(--plum-050);color:var(--plum)}.modal-salary{font-family:var(--font-mono);font-size:18px;font-weight:600;margin-top:22px}.modal-copy{color:var(--muted);font-size:12.5px;line-height:1.65;margin:18px 0 24px}.modal-actions{display:flex;gap:9px}.modal-actions .solid-button{background:var(--plum)}@keyframes modal-in{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}

@media(max-width:980px){
  .hero-grid{grid-template-columns:1fr}.hero-note{display:none}.desktop-nav{display:none}.menu-button{display:grid}.nav-cta .text-button{display:none}
  .hero-feature-row{grid-template-columns:1fr 1fr}.hero-feature:last-child{grid-column:1/-1}.market-grid{grid-template-columns:290px minmax(0,1fr);gap:35px}.map-stage svg{height:430px}.category-layout{grid-template-columns:250px 1fr;gap:48px}.employer-panel{grid-template-columns:1fr 320px}.benefit-grid{grid-template-columns:1fr 1fr}.benefit-card:last-child{grid-column:1/-1}
}
@media(max-width:760px){
  .container{width:min(100% - 28px,1180px)}.nav-shell{height:68px}.nav-cta .solid-button{display:none}.hero{padding:36px 0 22px}.hero h1{font-size:50px;letter-spacing:-1.8px}.hero-copy>p{font-size:15px}
  .search-shell{grid-template-columns:1fr}.search-field{border-right:0;border-bottom:1px solid var(--line)}.search-button{height:50px}.quick-searches{display:none}.hero-feature-row{grid-template-columns:1fr;margin-top:22px}.hero-feature:last-child{grid-column:auto}.filter-rail{align-items:stretch;flex-wrap:wrap}.filter-hint{width:100%;margin-left:0}.filter-rail label{flex:1}.filter-rail select{width:100%}
  .marketplace{padding:58px 0 72px;border-radius:23px 23px 0 0}.market-head{align-items:flex-start;flex-direction:column}.market-actions{overflow:auto;width:100%}.market-grid{grid-template-columns:1fr}.map-column{position:relative;top:auto}.map-stage svg{height:440px}.results-topline{margin-top:8px}.job-card{grid-template-columns:46px 1fr}.job-side{grid-column:2;flex-direction:row;align-items:center;justify-content:space-between;text-align:left}.category-layout{grid-template-columns:1fr;gap:28px}.category-intro p{max-width:520px}.benefits-head{display:block}.benefits-head p{margin-top:12px}.benefit-grid{grid-template-columns:1fr}.benefit-card:last-child{grid-column:auto}.employer-panel{grid-template-columns:1fr;gap:28px;padding:35px 28px}.employer h2{font-size:34px}.footer-shell{grid-template-columns:1fr;gap:18px;padding:28px 0}.footer-links{flex-wrap:wrap}
}
@media(max-width:480px){.hero h1{font-size:43px}.market-head h2,.category-intro h2,.benefits-head h2{font-size:31px}.map-stage svg{height:390px}.employer h2{font-size:31px}.job-card{padding:18px 0}.company-avatar{width:42px;height:42px}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}

/* =========================================================
   V4 — premium mobile-first discovery flow
   Mobile order: brand + menu → search → category → map → jobs
   ========================================================= */
.mobile-results-tools{display:none}

@media(max-width:760px){
  html{background:#f7f6f8}
  body{background:#f7f6f8}

  /* Compact premium app-style header */
  .topbar{
    background:rgba(255,255,255,.93);
    border-bottom:1px solid rgba(23,20,29,.07);
    box-shadow:0 8px 30px rgba(35,22,43,.055);
    backdrop-filter:blur(22px) saturate(150%);
  }
  .nav-shell{
    height:66px;
    padding:0;
    justify-content:space-between;
  }
  .brand{gap:9px}
  .brand-mark{
    width:38px;height:38px;border-radius:12px;
    background:linear-gradient(145deg,#17141d 0%,#4b1768 58%,#6f2d98 100%);
    box-shadow:0 10px 24px rgba(51,19,68,.20);
    font-size:19px;
  }
  .brand-word{font-size:20px;letter-spacing:-.45px}
  .brand-word small{font-size:9.5px}
  .nav-cta{margin-left:auto}
  .menu-button{
    display:grid;
    width:42px;height:42px;border-radius:13px;
    background:#fff;
    border:1px solid rgba(23,20,29,.09);
    box-shadow:0 7px 20px rgba(35,22,43,.055);
  }
  .mobile-menu{
    width:100%;
    padding:6px 14px 16px;
    background:rgba(255,255,255,.98);
    border-top:1px solid rgba(23,20,29,.06);
  }
  .mobile-menu a{
    padding:13px 3px;
    border-bottom:1px solid rgba(23,20,29,.055);
  }
  .mobile-menu a:last-child{border-bottom:0}

  /* Search becomes the first content users see */
  .hero{
    padding:14px 0 12px;
    background:
      radial-gradient(circle at 92% -30%,rgba(91,35,131,.12),transparent 40%),
      linear-gradient(180deg,#fbfafd 0%,#f7f6f8 100%);
  }
  .hero::after{display:none}
  .hero-grid,.hero-grid-clean,.hero-copy-clean{display:block;max-width:none}
  .eyebrow,.hero h1,.hero-copy>p,.quick-searches,.hero-feature-row{display:none!important}

  .search-shell{
    margin:0;
    max-width:none;
    display:grid;
    grid-template-columns:1fr;
    gap:9px;
    padding:11px;
    border-radius:20px;
    border:1px solid rgba(91,35,131,.10);
    background:rgba(255,255,255,.94);
    box-shadow:
      0 16px 45px rgba(35,22,43,.08),
      inset 0 1px 0 rgba(255,255,255,.9);
  }
  .search-shell:focus-within{
    border-color:rgba(91,35,131,.24);
    box-shadow:0 18px 52px rgba(35,22,43,.11);
  }
  .search-field{
    height:52px;
    border:1px solid #e8e3eb!important;
    border-radius:13px;
    padding:0 14px;
    background:#fbfafc;
  }
  .search-field:focus-within{
    background:#fff;
    border-color:#cdbbd8!important;
    box-shadow:0 0 0 3px rgba(91,35,131,.055);
  }
  .search-field svg{color:var(--plum)}
  .search-field input,.search-field select{font-size:13.5px;font-weight:600}
  .search-field input::placeholder{font-weight:500;color:#9b949f}
  .search-button{
    height:50px;
    border-radius:13px;
    background:linear-gradient(135deg,#4b1768,#6c2b94);
    box-shadow:0 11px 25px rgba(91,35,131,.20);
    letter-spacing:.1px;
  }

  /* Nothing interrupts search → map on mobile */
  .marketplace{
    padding:10px 0 62px;
    border-radius:0;
    border-top:0;
    background:#f7f6f8;
  }
  .market-head,.filter-rail{display:none!important}
  .market-grid{display:flex;flex-direction:column;gap:16px}

  /* Full-width premium map card */
  .map-column{
    order:1;
    position:relative;
    top:auto;
    padding:16px 12px 10px;
    border-radius:22px;
    background:
      radial-gradient(circle at 50% 0%,rgba(91,35,131,.07),transparent 40%),
      #fff;
    border:1px solid rgba(23,20,29,.075);
    box-shadow:0 18px 52px rgba(35,22,43,.075);
    overflow:hidden;
  }
  .map-copy{
    align-items:center;
    padding:2px 5px 0;
  }
  .map-copy p{
    font-family:var(--font-body);
    font-size:15px;
    font-weight:800;
    letter-spacing:-.2px;
  }
  .map-copy span{
    font-size:9.5px;
    line-height:1.35;
    max-width:130px;
    color:#918a95;
  }
  .map-stage{
    margin-top:4px;
    min-height:0;
    overflow:visible;
  }
  .map-stage svg{
    width:100%;
    height:500px;
    max-height:62vh;
    min-height:400px;
    filter:drop-shadow(0 17px 18px rgba(39,18,49,.10));
  }
  .district{
    stroke:rgba(255,255,255,.96);
    stroke-width:1.45;
  }
  .district.selected{
    stroke:#24112d;
    stroke-width:3;
    filter:drop-shadow(0 5px 7px rgba(28,13,35,.22));
  }
  .map-reset{
    margin:0 auto 2px;
    background:var(--plum-050);
    border-radius:999px;
    padding:8px 12px;
  }

  /* Job results come after the map */
  .results-column{
    order:2;
    background:#fff;
    border:1px solid rgba(23,20,29,.075);
    border-radius:22px;
    padding:15px 14px 18px;
    box-shadow:0 16px 45px rgba(35,22,43,.055);
  }

  /* Compact controls intentionally placed after the map */
  .mobile-results-tools{
    display:flex;
    gap:7px;
    overflow-x:auto;
    padding:0 0 13px;
    margin-bottom:13px;
    border-bottom:1px solid var(--line);
    scrollbar-width:none;
  }
  .mobile-results-tools::-webkit-scrollbar{display:none}
  .mobile-result-chip{
    flex:0 0 auto;
    height:34px;
    border:1px solid #e3dfe6;
    background:#fff;
    color:#645d69;
    padding:0 11px;
    border-radius:999px;
    font-size:10.5px;
    font-weight:800;
  }
  .mobile-result-chip.active{
    background:var(--ink);
    color:#fff;
    border-color:var(--ink);
  }
  .mobile-salary{
    flex:0 0 auto;
    height:34px;
    border:1px solid #e3dfe6;
    border-radius:999px;
    background:#fff;
    color:#645d69;
    padding:0 28px 0 11px;
    font-size:10.5px;
    font-weight:800;
    outline:0;
  }

  .results-topline{
    margin:0 0 2px;
    padding-bottom:13px;
    align-items:center;
  }
  .result-count strong{font-size:24px}
  .sort-control{gap:5px}
  .sort-control select{
    border:1px solid #e4e0e7;
    border-radius:9px;
    padding:7px 8px;
    background:#faf9fb;
    font-size:10px;
  }
  .job-card{
    grid-template-columns:44px minmax(0,1fr);
    gap:12px;
    padding:18px 2px;
  }
  .job-card:hover{padding-left:2px;padding-right:2px;box-shadow:none}
  .job-card::after{display:none}
  .company-avatar{
    width:42px;height:42px;border-radius:11px;
  }
  .job-card h3{font-size:15px;line-height:1.3}
  .job-meta{font-size:10.5px}
  .job-side{
    grid-column:2;
    flex-direction:row;
    align-items:center;
    justify-content:space-between;
  }
  .load-more{width:100%;height:44px;border-radius:12px}

  /* Keep lower sections refined on phones */
  .categories{padding:60px 0}
  .benefits{padding-bottom:60px}
  .employer{padding-bottom:60px}
  .employer-panel{
    border-radius:24px;
    box-shadow:0 20px 55px rgba(51,19,68,.15);
  }
}

@media(max-width:420px){
  .container{width:calc(100% - 22px)}
  .brand-word{font-size:19px}
  .map-stage svg{height:455px;min-height:370px}
  .map-column{border-radius:20px}
  .results-column{border-radius:20px}
}


/* =========================================================
   V5 — mobile app shell + true full-width district map
   ========================================================= */
.mobile-app-nav{display:none}

@media(max-width:760px){
  :root{
    --mobile-app-bg:#f3f1f5;
    --mobile-card:#ffffff;
    --mobile-ink:#18131d;
    --mobile-muted:#817986;
    --mobile-plum:#5b2383;
  }

  html,body{background:var(--mobile-app-bg)}
  body{padding-bottom:78px}

  /* App bar */
  .topbar{
    position:sticky;
    top:0;
    z-index:80;
    background:rgba(255,255,255,.94);
    border-bottom:1px solid rgba(23,20,29,.06);
    box-shadow:0 8px 28px rgba(39,23,49,.07);
    backdrop-filter:blur(24px) saturate(160%);
  }
  .topbar .container{
    width:100%;
    padding-inline:16px;
  }
  .nav-shell{height:64px}
  .brand-mark{
    width:38px;height:38px;border-radius:13px;
    background:linear-gradient(145deg,#211528,#5b2383 65%,#7c43a1);
    box-shadow:0 10px 24px rgba(91,35,131,.22);
  }
  .brand-word{font-family:var(--font-body);font-weight:850;font-size:19px;letter-spacing:-.7px}
  .brand-word span{color:var(--mobile-plum)}
  .menu-button{
    width:42px;height:42px;border-radius:14px;
    border:1px solid #e7e1ea;
    background:#fff;
    box-shadow:0 6px 18px rgba(35,22,43,.06);
  }
  .mobile-menu{
    width:100%!important;
    padding:8px 18px 18px!important;
    border-radius:0 0 22px 22px;
    box-shadow:0 18px 36px rgba(35,22,43,.08);
  }

  /* App search panel */
  .hero{
    padding:12px 0 8px!important;
    background:var(--mobile-app-bg)!important;
  }
  .hero .container{
    width:100%;
    padding-inline:14px;
  }
  .search-shell{
    margin:0!important;
    border-radius:20px!important;
    padding:10px!important;
    gap:8px!important;
    background:#fff!important;
    border:1px solid rgba(91,35,131,.09)!important;
    box-shadow:0 12px 34px rgba(37,21,45,.08)!important;
  }
  .search-field{
    min-height:50px;
    border:1px solid #ece7ef!important;
    border-radius:14px!important;
    background:#f9f8fa!important;
  }
  .search-field:first-child{border-bottom:1px solid #ece7ef!important}
  .search-field svg{color:var(--mobile-plum)}
  .search-button{
    height:49px!important;
    border-radius:14px!important;
    background:linear-gradient(135deg,#4f1c73,#6f3197)!important;
    box-shadow:0 10px 22px rgba(91,35,131,.22)!important;
  }

  /* Marketplace itself becomes an app canvas */
  .marketplace{
    padding:6px 0 28px!important;
    background:var(--mobile-app-bg)!important;
    overflow:visible;
  }
  .marketplace>.container{
    width:100%!important;
    max-width:none!important;
    padding:0!important;
    margin:0!important;
  }
  .market-grid{
    width:100%;
    gap:12px!important;
  }

  /* TRUE FULL-WIDTH MAP: edge to edge */
  .map-column{
    width:100vw!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:
      radial-gradient(circle at 50% 12%,rgba(91,35,131,.09),transparent 40%),
      linear-gradient(180deg,#fff 0%,#f8f5fa 100%)!important;
    overflow:hidden!important;
  }

  .map-copy{
    height:58px;
    padding:11px 16px 8px!important;
    align-items:center!important;
    background:rgba(255,255,255,.88);
    border-top:1px solid rgba(23,20,29,.05);
    border-bottom:1px solid rgba(23,20,29,.055);
    backdrop-filter:blur(16px);
  }
  .map-copy p{
    font-size:15px!important;
    font-weight:850!important;
    letter-spacing:-.3px!important;
  }
  .map-copy span{
    max-width:145px!important;
    font-size:9px!important;
    color:#8d8592!important;
  }

  .map-stage{
    width:100vw!important;
    height:min(67vh,600px)!important;
    min-height:470px!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    overflow:hidden!important;
    background:
      radial-gradient(circle at 48% 48%,rgba(91,35,131,.055),transparent 52%),
      linear-gradient(180deg,#faf8fb,#f4f0f6);
  }

  /* Make the SVG use the viewport rather than staying visually stuck left */
  .map-stage svg{
    display:block!important;
    width:100vw!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    overflow:visible!important;
    transform:scale(1.14);
    transform-origin:center center;
    filter:drop-shadow(0 15px 14px rgba(38,18,47,.10))!important;
  }

  .district{
    stroke:#fff!important;
    stroke-width:1.55!important;
    transform-box:fill-box;
    transform-origin:center;
  }
  .district:active{filter:brightness(.78)}
  .district.selected{
    stroke:#211126!important;
    stroke-width:3!important;
    filter:drop-shadow(0 5px 6px rgba(23,9,30,.20))!important;
  }

  .map-tooltip{
    position:absolute!important;
    top:auto;
    left:50%;
    bottom:18px;
    transform:translateX(-50%) translateY(8px)!important;
    border-radius:999px!important;
    padding:10px 14px!important;
    font-weight:750;
    box-shadow:0 12px 30px rgba(20,14,24,.20)!important;
  }
  .map-tooltip.show{transform:translateX(-50%) translateY(0)!important}

  .map-reset{
    position:absolute;
    z-index:4;
    right:14px;
    top:72px;
    margin:0!important;
    min-height:38px;
    padding:0 13px!important;
    border:1px solid rgba(91,35,131,.12)!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.93)!important;
    box-shadow:0 8px 22px rgba(35,22,43,.10);
    backdrop-filter:blur(12px);
  }

  /* Results become app cards below map */
  .results-column{
    width:calc(100% - 24px)!important;
    margin:0 12px!important;
    padding:14px 12px 18px!important;
    border:1px solid rgba(23,20,29,.065)!important;
    border-radius:22px!important;
    box-shadow:0 12px 34px rgba(35,22,43,.06)!important;
    background:#fff!important;
  }

  .mobile-results-tools{
    padding-bottom:12px!important;
    margin-bottom:12px!important;
    border-bottom:0!important;
  }
  .mobile-result-chip,.mobile-salary{
    height:36px!important;
    border-radius:12px!important;
    background:#f8f6f9!important;
  }
  .mobile-result-chip.active{
    background:#211528!important;
    color:#fff!important;
    border-color:#211528!important;
  }
  .results-topline{border-bottom:1px solid #eee9f0!important}
  .job-card{
    margin-top:10px;
    padding:14px!important;
    border:1px solid #eee9f0!important;
    border-radius:16px!important;
    background:#fff;
    box-shadow:0 8px 22px rgba(35,22,43,.035);
  }
  .job-card+.job-card{margin-top:10px}
  .job-card:hover{background:#fff!important}
  .company-avatar{border-radius:13px!important}
  .job-tags i{border-radius:999px!important;padding:5px 8px!important}
  .load-more{border-radius:14px!important}

  /* Lower website sections feel less like a long desktop website */
  .categories,.benefits,.employer{
    width:calc(100% - 24px);
    margin:14px 12px 0;
    border-radius:22px;
    overflow:hidden;
  }
  .categories{padding:42px 16px!important;background:#fff!important;border:1px solid rgba(23,20,29,.065)!important}
  .benefits{padding:0 16px 42px!important;background:#fff!important}
  .employer{padding:0 0 20px!important;background:transparent!important}
  .employer .container{width:100%!important}
  .employer-panel{border-radius:22px!important;margin:0!important}
  .site-footer{display:none!important}

  /* Fixed native-style bottom navigation */
  .mobile-app-nav{
    position:fixed;
    z-index:120;
    left:10px;
    right:10px;
    bottom:max(8px,env(safe-area-inset-bottom));
    height:66px;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    align-items:center;
    padding:6px 8px;
    border:1px solid rgba(23,20,29,.08);
    border-radius:22px;
    background:rgba(255,255,255,.94);
    box-shadow:0 18px 44px rgba(34,20,42,.18);
    backdrop-filter:blur(22px) saturate(170%);
  }
  .mobile-app-tab{
    border:0;
    background:transparent;
    color:#938a98;
    min-width:0;
    height:54px;
    padding:5px 3px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:4px;
    border-radius:16px;
    font-family:var(--font-body);
    font-size:9.5px;
    font-weight:800;
  }
  .mobile-app-tab svg{width:20px;height:20px}
  .mobile-app-tab.active{
    color:var(--mobile-plum);
    background:var(--plum-050);
  }
  .saved-icon-wrap{position:relative;display:grid;place-items:center}
  .saved-icon-wrap b{
    position:absolute;
    right:-9px;
    top:-7px;
    min-width:16px;
    height:16px;
    padding:0 4px;
    display:grid;
    place-items:center;
    border-radius:999px;
    background:var(--mobile-plum);
    color:#fff;
    font-size:8px;
    line-height:1;
    border:2px solid #fff;
  }

  /* More native feeling */
  button,.filter-button,.mobile-result-chip,.mobile-app-tab{
    -webkit-tap-highlight-color:transparent;
    touch-action:manipulation;
  }
}

@media(max-width:420px){
  .map-stage{
    height:60vh!important;
    min-height:430px!important;
  }
  .map-stage svg{transform:scale(1.18)}
}


/* =========================================================
   V6 — complete map fit + premium floating mobile dock
   ========================================================= */
@media(max-width:760px){

  /* Map: show the WHOLE island at all phone widths */
  .map-column{
    position:relative!important;
    width:100%!important;
    max-width:100%!important;
  }

  .map-stage{
    box-sizing:border-box!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:2 / 3!important; /* exact 480 × 720 map ratio */
    margin:0!important;
    padding:10px 4px 12px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:visible!important;
    background:
      radial-gradient(circle at 50% 44%,rgba(91,35,131,.075),transparent 43%),
      linear-gradient(180deg,#fbf9fc 0%,#f3eef6 100%)!important;
  }

  .map-stage svg{
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    margin:0 auto!important;
    transform:none!important;
    transform-origin:center!important;
    overflow:visible!important;
    object-fit:contain!important;
    filter:drop-shadow(0 18px 20px rgba(47,22,58,.10))!important;
  }

  .map-copy{
    min-height:62px!important;
    height:auto!important;
    padding:13px 16px 11px!important;
  }

  .map-reset{
    top:76px!important;
    right:14px!important;
  }

  /* Space for floating dock */
  body{padding-bottom:98px!important}

  /* Premium floating navigation dock */
  .mobile-app-nav.mobile-dock{
    position:fixed!important;
    z-index:130!important;
    left:12px!important;
    right:12px!important;
    bottom:max(10px,env(safe-area-inset-bottom))!important;
    width:auto!important;
    height:72px!important;
    display:grid!important;
    grid-template-columns:1fr 1fr 1.18fr 1fr 1fr!important;
    align-items:end!important;
    gap:2px!important;
    padding:7px 8px 6px!important;
    border:1px solid rgba(72,43,88,.12)!important;
    border-radius:25px!important;
    background:rgba(255,255,255,.92)!important;
    box-shadow:
      0 22px 55px rgba(30,17,37,.20),
      inset 0 1px 0 rgba(255,255,255,.95)!important;
    backdrop-filter:blur(26px) saturate(180%)!important;
    -webkit-backdrop-filter:blur(26px) saturate(180%)!important;
  }

  .mobile-dock::before{
    content:"";
    position:absolute;
    left:50%;
    top:-1px;
    width:86px;
    height:22px;
    transform:translateX(-50%);
    border-radius:0 0 28px 28px;
    background:rgba(255,255,255,.94);
    pointer-events:none;
  }

  .mobile-app-tab{
    position:relative!important;
    z-index:2!important;
    height:55px!important;
    min-width:0!important;
    padding:5px 2px 3px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:3px!important;
    border:0!important;
    border-radius:15px!important;
    background:transparent!important;
    color:#948a9a!important;
    font-size:9px!important;
    font-weight:800!important;
    letter-spacing:.01em!important;
    transition:color .2s ease,transform .2s ease,background .2s ease!important;
  }

  .mobile-app-tab .nav-icon{
    width:27px;
    height:27px;
    display:grid;
    place-items:center;
    border-radius:10px;
    transition:background .2s ease,transform .2s ease;
  }

  .mobile-app-tab .nav-icon svg{
    width:20px!important;
    height:20px!important;
  }

  .mobile-app-tab.active:not(.mobile-search-fab){
    color:var(--plum)!important;
    background:transparent!important;
  }

  .mobile-app-tab.active:not(.mobile-search-fab) .nav-icon{
    background:var(--plum-050);
    transform:translateY(-1px);
  }

  .mobile-app-tab:active{transform:scale(.96)}

  /* Elevated center search action */
  .mobile-search-fab{
    height:67px!important;
    justify-content:flex-end!important;
    color:var(--plum)!important;
    transform:translateY(-5px);
  }

  .mobile-search-fab:active{transform:translateY(-5px) scale(.96)!important}

  .search-fab-circle{
    width:52px;
    height:52px;
    margin-bottom:-1px;
    display:grid;
    place-items:center;
    border-radius:18px;
    color:#fff;
    background:
      radial-gradient(circle at 30% 20%,rgba(255,255,255,.24),transparent 35%),
      linear-gradient(145deg,#74379b,#4b176b);
    border:4px solid rgba(255,255,255,.98);
    box-shadow:
      0 12px 28px rgba(91,35,131,.32),
      0 3px 8px rgba(40,18,51,.15);
  }

  .search-fab-circle svg{
    width:23px!important;
    height:23px!important;
  }

  .mobile-search-fab>span:last-child{
    color:#5b2383;
    font-size:9px;
    font-weight:850;
  }

  .saved-icon-wrap b{
    right:-7px!important;
    top:-6px!important;
    min-width:15px!important;
    height:15px!important;
    font-size:7px!important;
  }

  /* Make results feel separated from the large map */
  .results-column{
    margin-top:4px!important;
    border-radius:24px!important;
  }
}

@media(max-width:420px){
  .map-stage{
    aspect-ratio:2 / 3!important;
    min-height:0!important;
    height:auto!important;
    padding-inline:2px!important;
  }

  .map-stage svg{
    transform:none!important;
  }

  .mobile-app-nav.mobile-dock{
    left:8px!important;
    right:8px!important;
    border-radius:23px!important;
  }

  .search-fab-circle{
    width:50px;
    height:50px;
  }
}




.search-shell{grid-template-columns:1.15fr 1fr .8fr auto!important}
.location-search-field svg{color:var(--plum)}
.employer-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px}
.employer-benefits article{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 12px 32px rgba(35,22,43,.045)}
.employer-benefits strong{display:block;color:var(--plum-dark);font-size:13px;margin-bottom:7px}
.employer-benefits p{margin:0;color:var(--muted);font-size:11.5px;line-height:1.55}
.opportunity-hub{padding:82px 0;background:#fff;border-top:1px solid var(--line)}
.alt-hub{background:var(--canvas)}
.hub-head{display:grid;grid-template-columns:1fr .8fr;gap:30px;align-items:end;margin-bottom:26px}
.hub-head h2{font-family:var(--font-display);font-size:38px;letter-spacing:-1.2px;margin:9px 0 0;font-weight:560}
.hub-head>p{margin:0;color:var(--muted);font-size:13px;line-height:1.65;max-width:520px;justify-self:end}
.hub-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.hub-card{border:1px solid var(--line);background:#fff;border-radius:20px;padding:22px;box-shadow:0 14px 38px rgba(35,22,43,.05)}
.hub-badge{display:inline-flex;padding:6px 9px;border-radius:999px;background:var(--plum-050);color:var(--plum);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.hub-card h3{font-family:var(--font-display);font-size:21px;margin:18px 0 7px}
.hub-card p{margin:0;color:var(--muted);font-size:11.5px;line-height:1.55}
.hub-card>div:last-child{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
.hub-card strong{font-family:var(--font-mono);font-size:10.5px}
.hub-card a{font-size:10.5px;color:var(--plum);font-weight:800}
.job-detail-page{display:none;position:fixed;inset:0;z-index:500;background:#f7f6f8;overflow:auto;min-height:100vh}
.job-detail-page.open{display:block}
.detail-topbar{position:sticky;top:0;z-index:3;height:72px;display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:12px;padding:0 max(18px,calc((100vw - 1180px)/2));background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}
.detail-back,.detail-save,.detail-secondary{border:1px solid var(--line);background:#fff;color:var(--ink);font-weight:800}
.detail-back{width:42px;height:42px;border-radius:12px;font-size:18px}.detail-save{padding:10px 14px;border-radius:11px}
.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:46px;padding-top:48px;padding-bottom:80px}
.detail-main{background:#fff;border:1px solid var(--line);border-radius:25px;padding:38px;box-shadow:var(--shadow)}
.detail-main h1{font-family:var(--font-display);font-size:48px;line-height:1.03;margin:12px 0 8px;font-weight:560}
.detail-company{font-weight:800;color:#625b66}.detail-chips{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0 30px}.detail-chips span{padding:8px 10px;border-radius:999px;background:#f4f1f5;color:#625b66;font-size:10px;font-weight:800}
.detail-section{padding:24px 0;border-top:1px solid var(--line)}.detail-section h2{font-family:var(--font-display);font-size:25px;margin:0 0 11px}.detail-section p,.detail-section li{color:var(--muted);font-size:13px;line-height:1.75}.detail-section ul{padding-left:20px}
.detail-aside{display:grid;gap:14px;align-content:start}.apply-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:0 16px 45px rgba(35,22,43,.06)}.apply-card span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.apply-card strong{display:block;font-family:var(--font-mono);font-size:17px;margin:8px 0 18px}.detail-apply{width:100%;background:var(--plum)!important}.detail-secondary{width:100%;margin-top:9px;border-radius:11px;padding:11px}.apply-card.compact p{font-size:11.5px;line-height:1.55;color:var(--muted);margin-bottom:0}
.native-mobile-nav{display:none}
@media(max-width:980px){.search-shell{grid-template-columns:1fr 1fr!important}.employer-benefits{grid-template-columns:1fr 1fr}}
@media(max-width:760px){
  body{padding-bottom:70px!important}.search-shell{grid-template-columns:1fr!important}
  .native-mobile-nav{position:fixed;left:0;right:0;bottom:0;z-index:190;height:calc(62px + env(safe-area-inset-bottom));padding:5px 12px env(safe-area-inset-bottom);display:grid;grid-template-columns:repeat(4,1fr);align-items:center;background:rgba(255,255,255,.98);border-top:1px solid rgba(23,20,29,.08);box-shadow:0 -6px 24px rgba(35,22,43,.06);backdrop-filter:blur(24px) saturate(170%)}
  .native-tab{height:50px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#8d8591;font-size:9px;font-weight:750}.native-tab svg{width:21px;height:21px}.native-tab.active{color:var(--plum)}.native-tab:active{transform:scale(.96)}
  .mobile-app-nav{display:none!important}
  .opportunity-hub{padding:54px 0}.hub-head{grid-template-columns:1fr;gap:12px;padding:0 14px}.hub-head h2{font-size:31px}.hub-head>p{justify-self:start}.hub-grid{grid-template-columns:1fr;padding:0 14px}.hub-card{border-radius:18px}
  .employer-benefits{grid-template-columns:1fr 1fr;margin-inline:12px}
  .detail-topbar{height:64px;padding:0 12px}.detail-layout{grid-template-columns:1fr;padding:16px 12px 86px;gap:12px}.detail-main{border-radius:19px;padding:22px 18px}.detail-main h1{font-size:34px}.detail-aside{grid-row:1}.apply-card{border-radius:18px}
}

/* =========================================================
   V8 — premium job marketplace polish
   ========================================================= */
:root{
  --v8-plum:#5a227f;
  --v8-plum-deep:#2e123c;
  --v8-ink:#18141d;
  --v8-soft:#f5f2f7;
  --v8-line:#e8e1ec;
  --v8-green:#1f9d69;
}
.topbar{background:rgba(255,255,255,.96)!important;border-bottom:1px solid rgba(65,39,77,.08)!important;box-shadow:0 8px 34px rgba(35,22,43,.055)!important}
.nav-shell{height:80px!important}.brand-mark{background:var(--v8-plum-deep)!important}.desktop-nav{gap:24px!important}.desktop-nav a{position:relative}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--v8-plum);transition:right .18s ease}.desktop-nav a:hover:after{right:0}
.auth-actions{gap:8px!important}.auth-login,.register-button,.post-ad-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border-radius:12px;font-size:12px;font-weight:800;white-space:nowrap}.auth-login{padding:0 10px!important}.register-button{padding:0 14px;border:1px solid #d9cfdf;background:#fff;color:var(--v8-plum-deep)}.register-button:hover{border-color:#baa5c8;color:var(--v8-plum)}.post-ad-button{background:var(--v8-plum-deep)!important;padding:0 17px!important}.post-ad-button:before{content:"+";margin-right:7px;font-size:17px;font-weight:500}
.hero{background:#f8f6f9!important;padding-top:68px!important}.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(91,35,131,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(91,35,131,.035) 1px,transparent 1px);background-size:38px 38px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),transparent 72%);pointer-events:none}.hero h1{max-width:900px!important}.hero-copy>p{max-width:760px!important}.search-shell{border:1px solid rgba(70,43,82,.12)!important;border-radius:18px!important;box-shadow:0 20px 60px rgba(42,27,49,.10)!important}.search-field{min-width:0}.search-field select{text-overflow:ellipsis}.category-search-field{min-width:240px}.search-button{background:var(--v8-plum)!important;box-shadow:none!important}.search-button:hover{background:#461869!important}
.hero-feature{background:#fff!important;border-color:rgba(70,43,82,.09)!important;box-shadow:0 8px 28px rgba(42,27,49,.04)}
.marketplace{border-radius:34px 34px 0 0!important}.filter-button.active{background:var(--v8-plum-deep)!important}.map-column{border-color:rgba(70,43,82,.09)!important}.results-column{position:relative}.job-card{border:1px solid transparent!important;border-bottom-color:var(--line)!important;border-radius:16px!important;margin:7px 0!important;padding:18px 14px!important}.job-card:hover{border-color:#ddcfe6!important;background:#fff!important;box-shadow:0 14px 38px rgba(44,26,52,.07)!important}.job-side{min-width:128px}.job-view-button,.view-job-button,.category-all-button{border:0;border-radius:10px;background:var(--v8-plum-deep);color:#fff!important;font-size:10px;font-weight:850;letter-spacing:.01em;padding:9px 12px;display:inline-flex;align-items:center;justify-content:center;transition:transform .16s ease,background .16s ease,box-shadow .16s ease}.job-view-button:hover,.view-job-button:hover,.category-all-button:hover{background:var(--v8-plum);transform:translateY(-1px);box-shadow:0 8px 20px rgba(91,35,131,.20)}.job-card::after{display:none!important}
.hub-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.hub-card:hover{transform:translateY(-4px);border-color:#d8c9e1;box-shadow:0 22px 55px rgba(35,22,43,.09)}.hub-card>div:last-child{align-items:center}.hub-card a.view-job-button{font-size:10px!important;color:#fff!important}
.categories-directory{padding:88px 0!important;background:#f7f5f8!important}.category-directory-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:28px}.category-directory-head h2{font-family:var(--font-display);font-size:40px;line-height:1.05;margin:8px 0 6px;font-weight:560}.category-directory-head p{margin:0;color:var(--muted);font-size:13px}.category-tile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.category-tile{min-height:116px;text-align:left;border:1px solid #e5dfe8;border-radius:17px;background:#fff;padding:16px;display:grid;grid-template-columns:28px 1fr;grid-template-rows:1fr auto;column-gap:9px;transition:transform .17s ease,border-color .17s ease,box-shadow .17s ease;color:var(--ink)}.category-tile>span{font-family:var(--font-mono);font-size:9px;color:#a097a4}.category-tile strong{font-size:12px;line-height:1.35;font-weight:800}.category-tile em{grid-column:2;font-style:normal;color:var(--plum);font-size:9.5px;font-weight:800}.category-tile:hover{transform:translateY(-3px);border-color:#cdbbd8;box-shadow:0 15px 35px rgba(35,22,43,.07)}
.discovery-boost{padding:18px 0 78px;background:var(--canvas)}.discovery-boost-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:13px}.discovery-card{border:1px solid var(--v8-line);border-radius:20px;background:#fff;padding:22px;min-height:175px;box-shadow:0 13px 34px rgba(35,22,43,.045)}.discovery-card.featured{background:var(--v8-plum-deep);color:#fff;border-color:var(--v8-plum-deep)}.discovery-kicker{font-family:var(--font-mono);font-size:9px;letter-spacing:.1em;color:#cab4d7}.discovery-card h3{font-family:var(--font-display);font-size:22px;margin:14px 0 9px;font-weight:560}.discovery-card p{font-size:11.5px;line-height:1.6;color:var(--muted);margin:0}.discovery-card.featured p{color:#d8cbdc}.discovery-icon{width:36px;height:36px;border-radius:11px;background:var(--plum-050);color:var(--plum);display:grid;place-items:center;font-weight:900}.district-chip-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:18px}.district-chip-row button{border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.08);color:#fff;padding:8px 10px;font-size:10px;font-weight:750}.district-chip-row button:hover{background:#fff;color:var(--v8-plum-deep)}
.employer-panel{grid-template-columns:1.05fr .7fr!important}.employer-benefits{grid-column:1/-1!important}.inverse-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.mobile-menu-actions{display:none}
.whatsapp-float{position:fixed;right:20px;bottom:24px;z-index:220;display:flex;align-items:center;gap:9px;background:#20a765;color:#fff;padding:12px 15px;border-radius:999px;box-shadow:0 14px 38px rgba(21,130,78,.28);font-size:11px;font-weight:850;transition:transform .18s ease,box-shadow .18s ease}.whatsapp-float svg{width:22px;height:22px}.whatsapp-float:hover{transform:translateY(-2px);box-shadow:0 18px 45px rgba(21,130,78,.34)}
@media(max-width:1080px){.category-tile-grid{grid-template-columns:repeat(3,1fr)}.auth-actions .register-button{display:none}}
@media(max-width:760px){
  .topbar .nav-shell{height:64px!important}.brand-word{font-size:19px!important}.auth-actions>a{display:none!important}.menu-button{display:grid!important}.mobile-menu.open{display:block!important}.mobile-menu>a{display:block}.mobile-menu-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:12px}.mobile-auth-btn{display:flex!important;align-items:center;justify-content:center!important;border:1px solid #ddd4e2!important;border-radius:12px!important;padding:11px!important}.mobile-auth-btn.register{background:#f5eff9!important;color:var(--plum)!important}.mobile-auth-btn.post{grid-column:1/-1;background:var(--v8-plum-deep)!important;color:#fff!important;border-color:var(--v8-plum-deep)!important}
  .hero{padding-top:14px!important}.search-shell{border-radius:18px!important}.category-search-field{min-width:0}.category-directory-head{display:block;padding:0 2px}.category-all-button{margin-top:14px}.category-tile-grid{grid-template-columns:1fr 1fr;gap:8px}.category-tile{min-height:106px;padding:14px}.discovery-boost-grid{grid-template-columns:1fr}.discovery-boost{padding-bottom:54px}.job-card{grid-template-columns:44px minmax(0,1fr)!important}.job-side{grid-column:2!important;display:grid!important;grid-template-columns:1fr auto!important;min-width:0}.job-view-button{grid-column:1/-1;width:100%;margin-top:4px;height:38px}.whatsapp-float{right:14px;bottom:78px;padding:12px;width:48px;height:48px;justify-content:center}.whatsapp-float span{display:none}.whatsapp-float svg{width:24px;height:24px}
}
@media(max-width:460px){.category-tile-grid{grid-template-columns:1fr}.category-tile{min-height:88px}.category-directory-head h2{font-size:34px}}

/* =========================================================
   V9 — official WOWJobs horizontal logo integration
   ========================================================= */
.brand-image-link{
  display:inline-flex!important;
  align-items:center!important;
  flex:0 0 auto;
  min-width:0!important;
  line-height:0;
}
.brand-logo-image{
  display:block;
  width:auto;
  height:48px;
  max-width:240px;
  object-fit:contain;
  object-position:left center;
}
.nav-shell .brand-logo-image{
  height:48px;
  max-width:245px;
}
.footer-brand-logo{
  height:42px;
  max-width:210px;
}
.detail-brand-logo{
  height:42px;
  max-width:215px;
}
.brand-image-link:hover .brand-logo-image{
  transform:translateY(-1px);
}
.brand-logo-image{
  transition:transform .18s ease,opacity .18s ease;
}
@media(max-width:760px){
  .nav-shell .brand-logo-image{height:39px;max-width:195px}
  .detail-brand-logo{height:37px;max-width:185px}
  .footer-brand-logo{height:38px;max-width:190px}
}
@media(max-width:390px){
  .nav-shell .brand-logo-image{height:36px;max-width:175px}
}


/* WOWJobs requested additions — additive only. */
.wowjobs-about{padding:78px 0;background:#fff;border-top:1px solid var(--v8-line)}
.wowjobs-about-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:42px;align-items:start}.wowjobs-about h2{font-family:var(--font-display);font-size:40px;line-height:1.05;margin:8px 0}.wowjobs-about p{font-size:13px;line-height:1.75;color:var(--muted);margin:0 0 12px}.wowjobs-social-links{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.wowjobs-social-links a{font-size:10px;font-weight:850;text-decoration:none;color:var(--v8-plum-deep);border:1px solid #ddd4e2;border-radius:999px;padding:8px 10px;background:#fff}.wowjobs-social-links a:hover{border-color:#c7b2d1;color:var(--v8-plum)}.detail-job-image{margin:0 0 24px;border-radius:18px;overflow:hidden;background:#f3eff5}.detail-job-image img{display:block;width:100%;max-height:420px;object-fit:cover}
@media(max-width:760px){.wowjobs-about{padding:56px 0}.wowjobs-about-grid{grid-template-columns:1fr;gap:18px}.wowjobs-about h2{font-size:34px}.wowjobs-social-links{margin-top:10px}}

/* WOWJobs usability refinements: preserve V9 structure, improve category/search readability. */
.search-shell{gap:6px!important}.search-field{background:#fbfafc!important;border:1px solid #eee8f1!important;border-radius:13px!important;min-height:48px}.search-field input,.search-field select{font-size:12px!important}.search-button{min-height:48px!important;border-radius:13px!important;font-weight:850!important}.category-search-field select{font-weight:700!important;color:#42384a!important}.category-tile-grid{gap:12px!important}.category-tile{min-height:124px!important;border-radius:18px!important;box-shadow:0 8px 20px rgba(35,22,43,.035)!important}.category-tile strong{font-size:12.5px!important}.category-tile em{margin-top:6px!important}.category-tile:focus-visible,.category-tile:hover{outline:none!important;border-color:#b99bc8!important;box-shadow:0 14px 30px rgba(91,35,131,.10)!important}.wowjobs-social-links a{width:36px;height:36px;padding:0!important;display:grid;place-items:center}.wowjobs-social-links svg{width:17px;height:17px;fill:currentColor}.wowjobs-social-links a:hover{transform:translateY(-2px)}
@media(max-width:760px){.search-shell{padding:8px!important}.category-tile{min-height:104px!important}.category-tile strong{font-size:12px!important}}


/* WOWJobs live-listing, image and responsive refinements. */
.job-visual{width:54px;min-width:54px;display:flex;align-items:flex-start;justify-content:center}.job-thumb{width:54px;height:54px;border-radius:14px;overflow:hidden;background:#f1edf3;border:1px solid #ece4f0}.job-thumb img{display:block;width:100%;height:100%;object-fit:cover}.job-card{grid-template-columns:54px minmax(0,1fr) minmax(125px,auto)!important}.modal-image-wrap{margin:12px 0 18px;border-radius:16px;overflow:hidden;background:#f4f1f5;border:1px solid #e8e1ec}.modal-image-wrap a{display:block}.modal-image-wrap img{display:block;width:100%;max-height:280px;object-fit:cover}.hub-empty-state{border:1px dashed #d8cfde;border-radius:22px;background:#fff;padding:28px;display:flex;flex-direction:column;gap:7px;color:#6d6373}.hub-empty-state strong{font-family:var(--font-display);font-size:24px;color:#2f2333}.hub-empty-state span{font-size:12px;line-height:1.6}.detail-image-link{display:block;position:relative}.detail-image-link img{cursor:zoom-in}.detail-image-link span{position:absolute;right:12px;bottom:12px;border-radius:999px;padding:8px 11px;background:rgba(36,24,43,.82);color:#fff;font-size:10px;font-weight:800;backdrop-filter:blur(8px)}.wowjobs-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(18,12,23,.92);display:flex;align-items:center;justify-content:center;padding:24px;cursor:zoom-out}.wowjobs-lightbox img{max-width:min(1400px,94vw);max-height:92vh;width:auto;height:auto;object-fit:contain;border-radius:10px;box-shadow:0 20px 80px rgba(0,0,0,.35)}.wowjobs-lightbox-close{position:fixed;right:20px;top:18px;width:42px;height:42px;border:0;border-radius:50%;background:#fff;color:#2e2333;font-size:28px;line-height:1;cursor:pointer}.detail-job-image{padding:0}.detail-job-image img{max-height:min(560px,62vh);object-fit:contain;background:#f3eff5}.sa-field select{cursor:pointer}.sa-field select option{font-size:12px}.sa-table-wrap{max-width:100%}.sa-actions form{margin:0}.sa-table td form{display:inline-flex}.sa-table td .sa-actions{align-items:center}
@media(max-width:900px){.job-card{grid-template-columns:54px minmax(0,1fr)!important}.job-side{grid-column:2!important}.modal-image-wrap img{max-height:240px}}
@media(max-width:560px){.job-visual,.job-thumb{width:46px;min-width:46px;height:46px}.job-card{grid-template-columns:46px minmax(0,1fr)!important}.detail-job-image img{max-height:420px}.detail-image-link span{right:8px;bottom:8px}.wowjobs-lightbox{padding:12px}.wowjobs-lightbox img{max-width:96vw;max-height:88vh}.wowjobs-lightbox-close{right:10px;top:10px}.hub-empty-state{padding:22px}.hub-empty-state strong{font-size:21px}}
