:root{color-scheme:light only}   /* 30 Oct 2026: the site has one (light) design; stop phones' automatic dark mode re-colouring it */
/* PUBLICSECTORFINANCEJOBS.COM 2026 theme. Colours and type follow the agreed designs. */
@font-face{font-family:'Exo 2';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/exo-2-latin-300-normal.woff2) format('woff2')}
@font-face{font-family:'Exo 2';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/exo-2-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Exo 2';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/exo-2-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Exo 2';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/exo-2-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'Nunito Sans';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/nunito-sans-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Nunito Sans';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/nunito-sans-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Nunito Sans';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/nunito-sans-latin-700-normal.woff2) format('woff2')}

:root{
  --brand:#102A43;--brand-dark:#0C2236;--brand-deep:#081C2C;--gold:#26B99A;--gold-dark:#1E9C82;--gold-light:#A8E6D6;
  --ink:#0F1C28;--ink-2:#22313F;--muted:#4A5A6B;--muted-2:#59687A;--line:#DCE3EA;--line-2:#E9EEF3;
  --bg:#F5F8FA;--tint:#EDF7F4;--cream:#FBF8F1;--cream-line:#E6D6B8;--on-dark:#CFEDE5;--on-dark-2:#A9DCCD;
  --head:'Exo 2',system-ui,sans-serif;--body:'Nunito Sans',system-ui,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.5;overflow-wrap:break-word}   /* long words (PUBLICSECTORFINANCEJOBS.COM, web addresses) wrap instead of pushing small phones sideways */
img{max-width:100%}
a{color:var(--brand)}a:hover{color:var(--brand-dark)}
h1,h2,h3{font-family:var(--head)}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;left:0;top:0}
.fld{position:relative}
.skip{position:absolute;left:-999px;top:8px;background:#fff;color:var(--brand);padding:8px 14px;border-radius:8px;z-index:10}.skip:focus{left:8px}

.wrap{max-width:1240px;margin:0 auto;padding:0 24px}
.card{background:#fff;border:1px solid var(--line);border-radius:12px}
.badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:4px 10px;border-radius:999px;line-height:1.2}
.b-premium{background:#F1E6D2;color:#5E4423}.b-featured{background:var(--tint);color:var(--brand)}.b-top{background:var(--brand);color:#fff}
.meta{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:14px}
.chip{display:inline-flex;align-items:center;gap:6px;background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:6px 10px;font-size:14px;font-weight:700;color:var(--ink);text-decoration:none}
a.chip:hover{border-color:var(--brand);color:var(--brand)}
.btn-gold{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--gold);color:var(--brand-deep);font-weight:700;text-decoration:none;border-radius:8px;border:0;min-height:44px;padding:0 20px;font-family:var(--head);font-size:16px;cursor:pointer}
.btn-gold:hover{background:var(--gold-dark);color:var(--brand-deep)}
.btn-line{display:inline-flex;align-items:center;justify-content:center;background:#fff;color:var(--brand);font-weight:700;text-decoration:none;border-radius:8px;border:1.5px solid var(--brand);min-height:44px;padding:0 18px;font-size:15px}
.btn-line:hover{background:var(--tint);color:var(--brand-dark)}
.go{text-decoration:none;font-weight:700}.go .u{text-decoration:underline;text-underline-offset:2px}
.eyebrow{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--brand);margin:0 0 6px}
.sec-title{font-family:var(--head);font-weight:700;font-size:26px;color:var(--ink);margin:0}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.mono{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:var(--tint);color:var(--brand);font-family:var(--head);font-weight:700;font-size:16px;flex:0 0 auto}
.mono-lg{width:64px;height:64px;font-size:20px}
.lg{width:56px;height:56px;object-fit:contain;border:1px solid var(--line);border-radius:8px;background:#fff;flex:0 0 auto}

/* Header */
.util{background:var(--brand-dark);color:var(--on-dark-2);font-size:14px}
.util .wrap{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;min-height:40px}
.util a{color:#fff;text-decoration:none}.util .util-sell{color:var(--gold-light);font-weight:700}
@media (max-width:900px){.util .util-sell{display:none}}   /* the header's own Advertise button shows from here down */
.new-tag{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:999px;background:var(--gold);color:var(--brand-deep);margin-right:8px}
.top{background:var(--brand)}
div.top,.emp-hero{border-bottom:4px solid var(--gold)}
body:not(:has(div.top, .emp-hero)) header.top{border-bottom:4px solid var(--gold)}
.top .bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding-top:18px;padding-bottom:18px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand img{height:30px;width:auto;display:block}
.brand span{font-family:var(--head);font-size:27px;line-height:1;color:#fff;font-weight:600;letter-spacing:.01em}.brand b{color:var(--gold);font-weight:600}
.nav{display:flex;align-items:center;flex-wrap:wrap;gap:22px}
.nav a{color:#fff;text-decoration:none;font-size:15px;font-weight:600;padding:10px 4px}
.nav a:hover,.nav a[aria-current="page"]{color:var(--gold-light)}
.nav a.btn-gold{color:var(--brand-deep);padding:0 18px}
.menu-btn{display:none;background:transparent;border:0;color:#fff;width:44px;height:44px;align-items:center;justify-content:center;cursor:pointer}

/* Hero */
.hero{padding-top:44px;padding-bottom:56px}
.hero h1{margin:0;color:#fff;font-size:56px;line-height:1.05;font-weight:600;letter-spacing:-.01em;max-width:860px}
.hero h1 em{font-style:normal;color:var(--gold)}
.hero .since{margin:16px 0 0;color:#fff;font-size:20px;line-height:1.5;font-weight:600}
.hero .sub{margin:6px 0 0;color:var(--on-dark);font-size:17px;line-height:1.55;max-width:760px}
.search{margin-top:30px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:14px;padding:16px;display:flex;flex-wrap:wrap;gap:12px}
.field{position:relative;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #C6D2C9;border-radius:8px;padding:0 14px;min-height:52px;flex:1 1 240px}
.field input{border:0;outline:0;font:inherit;font-size:16px;color:var(--ink);width:100%;background:transparent}
.search .btn-gold{min-height:52px;padding:0 34px}
.tags{margin-top:18px;display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.tags>span{color:var(--on-dark);font-size:14px;font-weight:700;margin-right:4px}
.tag{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:999px;border:1px solid rgba(255,255,255,.35);color:#fff;text-decoration:none;font-size:14px;font-weight:600}
.tag:hover{background:rgba(255,255,255,.12);color:#fff}

/* Logo strip */
.strip{background:#fff;border-bottom:1px solid var(--line)}
.strip .wrap{padding-top:26px;padding-bottom:28px}
.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.track{display:flex;gap:12px;width:max-content;animation:slide 70s linear infinite}
.marquee:hover .track{animation-play-state:paused}
.marquee.still{-webkit-mask-image:none;mask-image:none}.marquee.still .track{animation:none;flex-wrap:wrap;width:auto}
@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.marquee{overflow-x:auto;-webkit-mask-image:none;mask-image:none;padding-bottom:6px}.track{animation:none;width:max-content}.track>[aria-hidden="true"]{display:none}}
.logo-tile{display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:10px;text-decoration:none;color:var(--ink);padding:8px;min-height:92px;text-align:center}
.logo-tile:hover{border-color:var(--brand);box-shadow:0 4px 14px rgba(70,38,63,.12)}
.logo-tile img{width:100%;height:70px;object-fit:contain;display:block}
.track .logo-tile{border:2px solid var(--brand);width:140px;flex:0 0 auto}
.track .logo-tile img{height:76px}
.logo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}
.logo-band{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}

/* Main layout */
.main{padding-top:40px;padding-bottom:48px;display:flex;flex-wrap:wrap;gap:32px;align-items:flex-start}
.main-col{flex:999 1 600px;min-width:0;display:flex;flex-direction:column;gap:40px}
.side{flex:1 1 300px;min-width:0;display:flex;flex-direction:column;gap:20px}

/* Top Job */
.topjob{padding:28px;border:2px solid var(--brand);display:flex;flex-wrap:wrap;gap:24px}
.topjob .lg{width:104px;height:104px;border-radius:12px}
.topjob .mono{width:104px;height:104px;font-size:30px;border-radius:12px}
.topjob h3{margin:12px 0 6px;font-size:26px;line-height:1.2}
.topjob h3 a,.job h3 a,.jotw h3 a{color:var(--ink);text-decoration:none}
.topjob h3 a:hover,.job h3 a:hover,.jotw h3 a:hover{color:var(--brand);text-decoration:underline}
.emp{font-weight:700;color:var(--brand);font-size:16px}
.row-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.summary{margin:14px 0 0;color:var(--muted);line-height:1.6;font-size:15px}
.actions{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}

/* Premium list */
.prem{overflow:hidden;border:2px solid var(--gold);background:var(--cream);display:grid;grid-template-columns:repeat(auto-fit,minmax(min(380px,100%),1fr))}
.prow{display:flex;align-items:center;gap:14px;padding:14px 16px;border-bottom:1px solid var(--cream-line);text-decoration:none;color:var(--ink);background:var(--cream)}
.prow:hover{background:#FAF5EA}.prow:hover .pt{color:var(--brand);text-decoration:underline}
.pt{font-family:var(--head);font-weight:600;font-size:17px;line-height:1.3;margin:0;color:var(--ink)}
.prow .who{font-size:14px;margin-top:3px;color:var(--muted)}.prow .who b{color:var(--brand)}
.prow .pay{text-align:right;flex:0 0 auto}.prow .pay div:first-child{font-size:14px;font-weight:700;white-space:nowrap;max-width:170px;overflow:hidden;text-overflow:ellipsis}
.prow .pay div+div{font-size:12px;color:var(--muted-2);margin-top:3px}

/* Latest jobs */
.jobs{display:flex;flex-direction:column;gap:12px}
.job{padding:18px 20px;display:flex;flex-wrap:wrap;align-items:center;gap:16px}
.job .body{flex:1 1 240px;min-width:0}   /* 240 (was 320): a long pay line + button still fit beside the title on laptop widths (6 Nov 2026) */
.job .top-line{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:4px;font-size:13px;color:var(--muted-2)}
.job h3{margin:0;font-size:19px;line-height:1.25}
.job .lines{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:6px}
.job .right{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.job .right .chip{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}
.center{margin-top:20px;display:flex;justify-content:center}

/* Sidebar */
.jotw{padding:22px;border:2px solid var(--brand)}
.jotw h3{margin:0 0 4px;font-size:19px;line-height:1.25}
.jotw .badge{margin-bottom:12px}
.jotw-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:10px}
.jotw-head .lg{flex:none;border-radius:10px;border:1px solid var(--line);object-fit:contain;background:#fff}
.jotw .emp{font-size:15px;font-weight:700;color:var(--brand)}
.jotw .meta{display:flex;margin-top:4px}
aside .jotw{margin-top:18px}
aside .jotw:first-child{margin-top:0}
.topjob-side{border-color:var(--gold)}
.recruit{background:var(--brand);border-radius:12px;padding:24px;color:#fff}
.recruit .eb{margin:0 0 6px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}
.recruit h3{margin:0;font-size:24px;line-height:1.2}
.recruit p{margin:10px 0 0;color:var(--on-dark);line-height:1.55;font-size:15px}
.price{display:flex;justify-content:space-between;align-items:center;background:rgba(255,255,255,.08);border-radius:8px;padding:10px 12px;font-size:14px;margin-top:8px}
.price small{color:var(--on-dark-2);font-size:14px}.price b.v{font-family:var(--head);font-size:20px}
.price.best{background:#fff;color:var(--ink);border:2px solid var(--gold)}.price.best small{color:var(--muted)}
.recruit .note{margin:8px 0 0;font-size:12px;color:var(--on-dark-2)}
.areas{padding:20px}
.areas a{display:flex;justify-content:space-between;align-items:center;min-height:40px;border-bottom:1px solid var(--line-2);font-weight:700;font-size:15px;text-decoration:none}
.areas a span:first-child{text-decoration:underline;text-underline-offset:2px}
.count{display:inline-flex;min-width:26px;justify-content:center;font-size:12px;font-weight:700;color:#fff;background:var(--brand);border-radius:999px;padding:2px 8px}
.alerts{padding:22px}
.alerts h3{margin:0;font-size:20px}
.alerts label{display:block;font-size:14px;font-weight:700;margin:14px 0 6px}
.alerts input{width:100%;min-height:46px;border:1px solid #C6D2C9;border-radius:8px;padding:0 12px;font:inherit;font-size:16px}
.alerts button{margin-top:10px;width:100%}

/* Market report band */
.report{background:var(--brand-dark)}
.report .wrap{padding-top:34px;padding-bottom:34px;display:flex;flex-wrap:wrap;gap:28px;align-items:center}
.report .txt{flex:1 1 380px;min-width:0}
.pill{display:inline-flex;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:999px;background:var(--gold);color:var(--brand-deep)}
.report h2{margin:12px 0 6px;font-size:30px;line-height:1.15;color:#fff}
.report p{margin:0;color:var(--on-dark);font-size:16px;line-height:1.55}
.report .btn-gold{margin-top:16px}
.stats{flex:1 1 520px;min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.stat{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);border-radius:12px;padding:16px}
.stat b{display:block;font-family:var(--head);font-size:32px;color:#fff}.stat b.gold{color:var(--gold-light)}
.stat span{font-size:14px;color:var(--on-dark-2)}

/* Band, browse and text */
.band{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.band .wrap{padding-top:36px;padding-bottom:40px}
.lower{padding-top:44px;padding-bottom:52px}
.browse{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:32px}
.browse h2{margin:0 0 12px;font-size:20px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip.pale{background:#fff;font-weight:600;color:var(--brand)}
.home-text{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:40px;margin-top:44px;padding-top:36px;border-top:1px solid var(--line)}
.home-text h2{margin:0 0 12px;font-size:26px;line-height:1.2}
.prose{color:var(--ink-2);line-height:1.7;font-size:16px}.prose p{margin:0 0 12px}
details.hq{border-bottom:1px solid #E2E9E3;padding:12px 0}
details.hq summary{cursor:pointer;font-weight:700;font-size:16px;min-height:32px;display:flex;align-items:center}
details.hq p{margin:8px 0 0;line-height:1.6;color:var(--ink-2);font-size:15px}

/* Footer */
.foot{background:var(--brand-dark);color:var(--on-dark-2)}
.foot .cols{padding-top:40px;padding-bottom:28px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:28px}
.foot nav{display:flex;flex-direction:column;gap:8px}
.foot nav>span{color:#fff;font-weight:700;margin-bottom:4px}
.foot a{color:var(--on-dark-2);text-decoration:none;font-size:14px}.foot a:hover{color:#fff}
.foot .brand span{font-size:20px}.foot .brand img{height:22px}
.foot .tagline{margin:12px 0 0;font-size:14px;line-height:1.6}
.foot .foot-sell{display:inline-flex;align-items:center;gap:8px;margin-top:14px;min-height:40px;padding:0 14px;border-radius:8px;background:var(--gold);color:var(--brand-deep);font-weight:700;font-size:14px;font-family:var(--head)}
.foot .foot-sell:hover{color:var(--brand-deep);background:var(--gold-dark)}
.foot .legal{border-top:1px solid rgba(255,255,255,.14);padding-top:16px;padding-bottom:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:13px}
.foot .legal span:last-child{display:flex;gap:16px}

/* Old-template pages shown inside the new frame until each is rebuilt */
.legacy{background:#fff}

/* Phones and small tablets */
@media (max-width:900px){
  .menu-btn{display:inline-flex}
  .nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;padding-bottom:8px}
  .nav.open{display:flex}
  .nav a{padding:12px 4px;border-top:1px solid rgba(255,255,255,.12)}
  .nav a.btn-gold{margin-top:10px;justify-content:center;min-height:48px}
  .logo-band{grid-template-columns:repeat(3,minmax(0,1fr))}
  .home-text{grid-template-columns:1fr}
}
@media (max-width:640px){
  .wrap{padding:0 16px}
  .util .util-sell{display:none}
  .util-noann{display:none}   /* nothing left in the bar on phones (no market report yet) */
  .brand span{font-size:20px}.brand img{height:22px}
  .hero{padding-top:18px;padding-bottom:24px}
  .hero h1{font-size:32px;line-height:1.1}
  .hero .since{font-size:17px;margin-top:12px}.hero .sub{font-size:15px}
  .search{padding:0;background:none;border:0;flex-direction:column}
  .search .field{flex:1 1 auto}
  .search .btn-gold{width:100%;min-height:48px}
  .track .logo-tile{width:100px;min-height:76px}.track .logo-tile img{height:60px}
  .main{padding-top:24px;gap:28px}
  .main-col{gap:28px}
  .topjob{padding:16px;gap:12px}
  .topjob .lg,.topjob .mono{width:64px;height:64px;font-size:20px}
  .topjob h3{font-size:19px}
  .prem{grid-template-columns:1fr}
  .prow{padding:14px;align-items:flex-start}
  .prow .pay{display:none}
  .sec-title{font-size:22px}
  .job{padding:14px;gap:12px}
  .job .right{width:100%}.job .right .btn-gold{flex:1}
  .stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .stat{padding:12px}.stat b{font-size:26px}.stat span{font-size:13px}
  .report h2{font-size:23px}
  .logo-band{grid-template-columns:repeat(3,minmax(0,1fr))}
  .home-text{grid-template-columns:1fr;gap:24px}
  .foot .cols{grid-template-columns:repeat(2,minmax(0,1fr))}
  .foot .cols>div:first-child{grid-column:1/-1}
}

/* Search / all jobs */
.search-slim{margin-top:0;padding:0;background:none;border:0}
.search-slim .btn-gold{min-height:52px;padding:0 30px}
.field select{border:0;outline:0;font:inherit;font-size:15px;font-weight:600;color:var(--ink);background:transparent;width:100%;cursor:pointer}
.res-head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:16px}
.res-head h1{margin:0;font-size:32px;font-weight:700}
.res-head p{margin:6px 0 0;color:var(--muted)}
.sort{display:flex}
.active-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px}
.active-filters a.active{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border-radius:999px;background:var(--brand);color:#fff;text-decoration:none;font-size:14px;font-weight:700}
.res-layout{display:flex;flex-wrap:wrap;gap:28px;align-items:flex-start;margin-top:22px}
.filters{flex:1 1 260px;max-width:100%;min-width:0;display:flex;flex-direction:column;gap:16px}
.filters-toggle>summary{display:none}
details.f{border-top:1px solid var(--line-2);padding:10px 0}
details.f:first-of-type{border-top:0}
details.f summary{cursor:pointer;font-weight:700;font-size:15px;min-height:36px;display:flex;align-items:center;justify-content:space-between;list-style:none}
details.f summary::after{content:'▾';color:var(--brand)}
details.f[open] summary::after{content:'▴'}
.opt{display:flex;align-items:center;gap:10px;min-height:36px;font-size:15px;color:var(--ink-2);cursor:pointer}
.opt input{width:18px;height:18px;accent-color:var(--brand);flex:0 0 auto}
.opt .count{margin-left:auto;font-size:12px;font-weight:700;color:var(--muted);background:var(--bg);border-radius:999px;padding:1px 8px}
.results{flex:999 1 620px;min-width:0;display:flex;flex-direction:column;gap:14px}
.tops{padding:14px 16px 16px;border:2px solid var(--brand)}
.tops-head{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.tops-head h2{margin:0}.tops-head span{font-size:12px;color:var(--muted-2)}
.tops-row{display:flex;flex-wrap:wrap;gap:10px}
.tops-row>a{flex:1 1 200px;min-width:0;display:flex;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:10px;text-decoration:none;color:var(--ink)}
.tops-row>a:hover{border-color:var(--brand)}
.tops-row .lg{width:44px;height:44px}.tops-row .mono{width:44px;height:44px}
.tops-row strong{display:block;font-family:var(--head);font-size:15px;line-height:1.25}
.tops-row span span{font-size:13px;color:var(--muted)}
.hint{margin:0;padding:10px 14px;border-radius:8px;background:var(--tint);color:var(--brand);font-size:14px;font-weight:700}
.job h2.jt{margin:0;font-size:19px;line-height:1.25}
.job h2.jt a{color:var(--ink);text-decoration:none}.job h2.jt a:hover{color:var(--brand);text-decoration:underline}
.job-prem{border:2px solid var(--gold);background:var(--cream)}
.blurb{margin:8px 0 0;font-size:14px;line-height:1.5;color:var(--ink-2)}
.hiring{background:var(--tint);border-radius:12px;padding:16px 18px}
.alert-box{padding:22px;display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;border:1.5px dashed var(--brand)}
.alert-box .t{margin:0;font-family:var(--head);font-size:20px;font-weight:700}
.alert-box .s{margin:4px 0 0;color:var(--muted);font-size:15px}
.pager{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:10px}
.pager a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#fff;text-decoration:none;font-weight:700}
.pager a[aria-current="page"]{background:var(--brand);color:#fff;border-color:var(--brand)}
@media (max-width:900px){
  .filters-toggle>summary{display:inline-flex;cursor:pointer;list-style:none}
  .filters-toggle:not([open])>form{display:none}
  .filters-toggle[open]>summary{margin-bottom:10px}
}
@media (max-width:640px){
  .res-head h1{font-size:24px}
  .search-slim .btn-gold{width:100%}
  .alert-box .btn-gold{width:100%}
}
@media (max-width:640px){
  .search-slim{flex-direction:column}
  .search-slim .field{flex:0 0 auto!important;min-height:50px}
}
@media (max-width:900px){.filters .recruit{display:none}}

/* Messages */
.note{border-radius:10px;padding:12px 16px;font-weight:700;margin-bottom:8px}
.note-ok{background:#E3F3E8;color:#1E6B3A;border:1px solid #BFE3CB}
.note-bad{background:#FFF4F4;color:#8A1F1F;border:1px solid #F0C9C9}

/* Job page */
.crumbs{font-size:13px;color:var(--muted-2);margin-top:16px}
.crumbs a{color:var(--muted-2)}
.b-new{background:#E3F3E8;color:#1E6B3A}.b-closed{background:#FBE4E4;color:#8A1F1F}
.closed-banner{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;background:#FFF4F4;border:1px solid #F0C9C9;border-radius:12px;padding:16px 20px}
.closed-banner .t{margin:0;font-family:var(--head);font-size:19px;font-weight:700;color:#8A1F1F}
.closed-banner .s{margin:4px 0 0;color:var(--muted)}
.job-layout{padding-top:16px;padding-bottom:48px;display:flex;flex-wrap:wrap;gap:28px;align-items:flex-start}
.job-main{flex:999 1 620px;min-width:0;display:flex;flex-direction:column;gap:24px}
.job-side{flex:1 1 300px;min-width:0;display:flex;flex-direction:column;gap:18px}
.accent-gold{border-top:4px solid var(--gold)!important}.accent-teal{border-top:4px solid var(--brand)!important}
.job-head{padding:26px 28px;display:flex;gap:20px;align-items:center}
.job-head .lg,.job-head .mono{width:84px;height:84px;border-radius:12px;font-size:24px}
.job-logo{flex:0 0 auto;display:block;line-height:0}
.job-head .lg{min-width:84px;max-width:84px}
.job-head .badges{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.job-head h1{margin:8px 0 4px;font-size:32px;line-height:1.15;color:#0F1C28}
.emp-line{margin:0;font-size:17px}.emp-line a{font-weight:700}
.meta-line{margin:10px 0 0;display:flex;flex-wrap:wrap;gap:6px 18px;font-size:15px;color:var(--ink-2)}
.meta-line span{display:inline-flex;gap:6px;align-items:center}
.job-body{padding:28px;font-size:16px;line-height:1.75;color:#2A3B42;overflow-wrap:anywhere}
.job-body h1,.job-body h2,.job-body h3,.job-body h4{font-family:var(--head);color:#0F1C28;line-height:1.3;margin:22px 0 8px;font-size:20px}
.job-body p{margin:0 0 14px}.job-body ul,.job-body ol{margin:0 0 14px;padding-left:22px}
.job-body img{height:auto}
.job-body table{border-collapse:collapse;max-width:100%}.job-body td,.job-body th{border:1px solid var(--line);padding:6px 8px}
.apply-out{margin-top:24px;background:var(--tint);border:1.5px solid var(--brand);border-radius:12px;padding:20px 22px;display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between}
.apply-out .t{margin:0;font-family:var(--head);font-size:20px;font-weight:700;color:var(--brand)}
.apply-out .s{margin:4px 0 0;color:var(--ink-2);font-size:15px}
.apply-form{margin-top:24px;background:var(--tint);border:1.5px solid var(--brand);border-radius:12px;padding:24px}
.apply-form h2{margin:0!important;font-size:22px!important;color:var(--brand)!important}
.apply-form .s{margin:6px 0 20px;color:var(--muted)}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:14px}
.fld label{display:block;font-size:14px;font-weight:700;margin-bottom:6px;line-height:1.3}
.fld input{width:100%;min-height:46px;border:1px solid #C6D2C9;border-radius:8px;padding:0 12px;font:inherit;font-size:16px;background:#fff}
.drop{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:2px dashed #9FB6BF;border-radius:10px;padding:18px;text-align:center;color:var(--muted);background:#fff;cursor:pointer;font-weight:400!important}
.apply-form .small{font-size:13px;color:var(--muted-2);line-height:1.5;margin:14px 0}
.similar{padding:22px 26px;border-top:4px solid var(--gold)}
.sim{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line-2);text-decoration:none;color:var(--ink)}
.sim:last-child{border-bottom:0}
.sim .lg,.sim .mono{width:48px;height:48px}
.sim .t{margin:0;font-family:var(--head);font-weight:600;font-size:16px}.sim:hover .t{color:var(--brand);text-decoration:underline}
.sim .w{font-size:13px;color:var(--muted);margin-top:2px}.sim .w strong{color:var(--brand)}
.sim .sal{font-size:14px;font-weight:700;white-space:nowrap;max-width:160px;overflow:hidden;text-overflow:ellipsis}
.side-apply{padding:18px 20px;display:flex;flex-direction:column;gap:8px}
.side-apply .btn-gold{min-height:50px;font-size:17px}
.btn-gold.is-off{background:#E2E9E3;color:var(--muted-2);cursor:default}
.side-links{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:14px}
.share-btn{display:inline-flex;align-items:center;min-height:40px;padding:0 12px;border:1px solid #C6D2C9;border-radius:8px;background:#fff;color:var(--brand);font:inherit;font-size:14px;font-weight:700;cursor:pointer}
.dl{display:grid;grid-template-columns:auto 1fr;gap:10px 14px;font-size:15px;margin:0}
.dl dt{color:var(--muted-2)}.dl dd{margin:0;font-weight:700;color:#0F1C28}
.att{display:flex;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line-2);text-decoration:none}
.att:last-child{border-bottom:0}
.att .ico{width:44px;height:44px;flex:0 0 auto;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;letter-spacing:.04em;background:var(--tint);color:var(--brand)}
.att .ico-pdf{background:#FBE4E4;color:#8A1F1F}
.att strong{display:block;color:#0F1C28}.att span span{font-size:13px;color:var(--muted-2)}
.map-link{margin:0;font-size:14px;color:var(--muted);display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.sell-lines{background:var(--tint);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:8px;font-size:14px}
.sell-lines a{display:flex;justify-content:space-between;gap:8px}
.sell-lines a+a{padding-top:8px;border-top:1px solid #C9DCE3}
.sell-lines .mut{color:var(--muted);font-weight:400}
.sticky-apply{display:none}
@media (max-width:900px){
  .sticky-apply{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:20;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line);box-shadow:0 -4px 16px rgba(48,26,44,.12)}
  .sticky-apply .sal{font-weight:700;font-size:14px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .sticky-apply .sa-txt{display:flex;flex-direction:column;min-width:0;line-height:1.3}.sticky-apply .sa-title{font-size:13px;color:var(--muted,#55707a);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .sticky-apply .btn-gold{flex:0 0 auto;min-width:120px}
  body.has-sticky .foot{padding-bottom:70px}
}
@media (max-width:640px){
  .job-head{padding:18px;gap:14px;align-items:flex-start;flex-direction:column}
  .job-head .lg,.job-head .mono{width:64px;height:64px}
  .job-head .lg{min-width:64px;max-width:64px}
  .job-head h1{font-size:24px}
  .job-body{padding:18px}
  .apply-form{padding:18px}
  .similar{padding:18px}
}

/* Premium cards */
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(250px,100%),1fr));gap:16px}
.pcard{background:var(--cream);border:2px solid var(--gold);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:10px}
.pc-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.pc-top .lg,.pc-top .mono{width:64px;height:64px}
.pc-title{margin:4px 0 0;font-family:var(--head);font-size:19px;line-height:1.25}
.pc-title a{color:var(--ink);text-decoration:none}.pc-title a:hover{color:var(--brand);text-decoration:underline}
.pc-emp{font-weight:700;color:var(--brand);font-size:15px}
.pc-foot{margin-top:auto;padding-top:10px;display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid var(--line-2)}
.pc-foot span{font-size:13px;color:var(--muted-2)}
.pc-foot .btn-gold{min-height:40px;padding:0 16px;font-size:15px}
@media (max-width:640px){.pgrid{grid-template-columns:1fr}}
.results-h{display:flex;align-items:baseline;gap:10px;margin:6px 0 2px;padding:0 0 8px 12px;border-left:4px solid var(--gold,#D6AE0A);border-bottom:1px solid var(--line,#DDE6EA);font-family:var(--head);font-size:22px;font-weight:700;line-height:1.2}.results-h span{font-family:var(--body,inherit);font-size:14px;font-weight:500;color:var(--muted-2)}
.pin-head{display:flex;align-items:center;gap:10px}.pin-head span+span{font-size:13px;color:var(--muted-2)}
.more-label{margin:6px 0 0;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.bell{display:inline-flex;align-items:center;gap:6px;min-height:40px}
.share-btn{gap:6px}
.lvls{display:flex;flex-direction:column;gap:4px}
.res-tools{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.res-tools .btn-line{gap:8px}
.seg{display:inline-flex;background:#fff;border:1px solid #C6D2C9;border-radius:8px;padding:3px;gap:3px}
.seg a{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 12px;border-radius:6px;font-size:15px;font-weight:700;text-decoration:none;color:var(--ink-2)}
.seg a.on{background:var(--brand);color:#fff}
.prem-list{grid-template-columns:1fr}
.clamp1{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;color:var(--ink-2)!important}
@media (max-width:640px){.res-tools .seg{display:none}}
.btn-gold{white-space:nowrap}
.pc-foot span{min-width:0;line-height:1.3}
.pc-foot .btn-gold{padding:0 12px;flex:0 0 auto}

/* Employers */
.crumbs-dark{color:var(--on-dark-2);margin-top:0;padding-top:12px;padding-bottom:12px}
.crumbs-dark a{color:var(--on-dark-2)}.crumbs-dark span{color:#fff}
.page-h1{margin:12px 0 0;color:#fff;font-size:40px;line-height:1.1}
.page-sub{margin:10px 0 0;color:var(--on-dark);font-size:18px;max-width:760px;line-height:1.5}
.tabs{display:flex;flex-wrap:wrap;gap:8px}
.tabs a{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 16px;border-radius:999px;border:1px solid #C6D2C9;background:#fff;text-decoration:none;font-weight:700;font-size:15px;color:var(--ink-2)}
.tabs a .n{font-size:12px;background:var(--bg);border-radius:999px;padding:1px 8px;color:var(--muted)}
.tabs a.on{background:var(--brand);border-color:var(--brand);color:#fff}.tabs a.on .n{background:rgba(255,255,255,.18);color:#fff}
.hire-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 16px;padding-top:6px}
.hire{position:relative;display:flex;gap:16px;align-items:center;padding:16px;background:#fff;border:1px solid var(--line);border-radius:12px;text-decoration:none;color:var(--ink)}
.hire:hover{border-color:var(--brand);box-shadow:0 4px 14px rgba(70,38,63,.12)}
.hire .lg,.hire .mono{width:110px;height:110px;font-size:28px}
.hire-promo{border:2px solid var(--gold);background:var(--cream)}
.feat-tag{position:absolute;top:-10px;left:16px;background:var(--gold);color:var(--brand-deep);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:3px 9px}
.hire-txt{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}
.hire .nm,.az-row .nm{font-family:var(--head);font-weight:700;font-size:17px;line-height:1.3;display:block}
.hire .sec,.az-row .sec{font-size:13px;color:var(--muted-2)}
.hire .jobs,.az-row .jobs{display:inline-flex;align-self:flex-start;margin-top:8px;font-size:12px;font-weight:700;background:#E3F3E8;color:#1E6B3A;border-radius:999px;padding:2px 9px;white-space:nowrap}
.hire .more{margin-top:8px;font-size:13px;font-weight:700;color:var(--brand)}
.letters{display:flex;flex-wrap:wrap;gap:4px;margin-top:14px}
.letters a,.letters span{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;font-weight:700;text-decoration:none}
.letters a{border:1px solid var(--line);background:#fff;color:var(--brand)}.letters a.on{background:var(--brand);color:#fff;border-color:var(--brand)}
.letters span{color:#B8C6CC}
.az-letter{margin:20px 0 6px;font-size:30px;color:var(--brand);border-bottom:2px solid #E2E9E3;padding-bottom:4px}
.az-cols{columns:3 300px;column-gap:32px}
.az-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line-2);text-decoration:none;color:var(--ink);break-inside:avoid}
.az-row .nm{font-size:15px}.az-row .jobs{margin-top:0}
.az-row:hover .nm{color:var(--brand);text-decoration:underline}
.sell-strip{background:var(--brand);border-radius:14px;padding:22px 26px;display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;color:#fff}
.sell-strip .t{margin:0;font-family:var(--head);font-size:22px;font-weight:700}.sell-strip .s{margin:4px 0 0;color:var(--on-dark)}
.seo-cols{columns:2 320px;column-gap:32px;color:var(--muted);font-size:15px;line-height:1.7}.seo-cols p{margin:0 0 12px}
/* Employer page */
.emp-hero{background:var(--brand-dark)}
.emp-banner{height:150px;background:linear-gradient(120deg,#081C2C 0%,#18543C 55%,#102A43 100%) center/cover no-repeat}
.emp-banner-auto{height:100px;background-size:cover;background-position:center}.emp-banner.has-img{position:relative;overflow:hidden;height:136px}.emp-banner-bg{position:absolute;inset:-30px;background:center/cover no-repeat;filter:blur(22px) brightness(.7) saturate(1.1)}.emp-banner-img{position:relative;display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.emp-head{padding-bottom:28px;display:flex;flex-wrap:wrap;gap:24px;align-items:flex-start}
.emp-logo{position:relative;z-index:2;margin-top:-75px;flex:0 0 auto}
.emp-logo .lg,.emp-logo .mono{width:150px;height:150px;border-radius:14px;border:4px solid #fff;box-shadow:0 8px 24px rgba(0,0,0,.18);background:#fff;font-size:40px}
.emp-title{flex:1 1 420px;min-width:0;padding-top:18px}
.emp-title h1{margin:8px 0 0;color:#fff;font-size:38px;line-height:1.1}
.tagws{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.tagw{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);color:#fff;font-size:14px;font-weight:600}
.emp-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}   /* under the name, lined up with it */
.btn-ghost{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:8px;border:1.5px solid rgba(255,255,255,.6);color:#fff;font-weight:700;font-size:15px;text-decoration:none}
.btn-ghost:hover{background:rgba(255,255,255,.1);color:#fff}
.emp-layout{padding-top:32px;padding-bottom:48px;display:flex;flex-wrap:wrap;gap:32px;align-items:flex-start}
.emp-main{flex:999 1 600px;min-width:0;display:flex;flex-direction:column;gap:32px}
.emp-side{flex:1 1 300px;min-width:0;display:flex;flex-direction:column;gap:20px}
.job h3 a{color:var(--ink);text-decoration:none}
@media (max-width:900px){.hire-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){
  .page-h1{font-size:28px}.page-sub{font-size:16px}
  .hire-grid{grid-template-columns:1fr}
  .hire .lg,.hire .mono{width:72px;height:72px;font-size:20px}
  .emp-logo .lg,.emp-logo .mono{width:110px;height:110px}
  .emp-logo{margin-top:-55px}
  .emp-title{padding-top:0}.emp-title h1{font-size:28px}
  .emp-actions{width:100%}.emp-actions a{flex:1}
}
/* Search results: compact list view */
.rlist{padding:0;overflow:hidden}
.lrow{display:flex;align-items:center;gap:14px;padding:12px 18px;border-bottom:1px solid var(--line,#E3E9EC);text-decoration:none;color:var(--ink)}
.lrow:last-child{border-bottom:0}
.lrow:hover{background:var(--tint)}.lrow:hover .lt{color:var(--brand);text-decoration:underline}
.lrow-prem{background:var(--cream)}
.lrow .lmain{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}
.lrow .lt{font-family:var(--head);font-weight:700;font-size:16px;line-height:1.3}
.lrow .lwho{font-size:14px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lrow .lwho b{color:var(--brand)}
.lrow .lpay{flex:0 0 auto;text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:3px;font-size:12px;color:var(--muted-2)}
.lrow .lpay>span:first-child{font-size:14px;font-weight:700;color:var(--ink);white-space:nowrap;max-width:190px;overflow:hidden;text-overflow:ellipsis}
.lrow .badge{font-size:11px;padding:1px 7px}
.lrow .lsal-m{display:none;font-size:13px;font-weight:700;color:var(--ink)}
@media (max-width:640px){.lrow{padding:12px 14px;align-items:flex-start}.lrow .lpay{display:none}.lrow .lwho{white-space:normal}.lrow .lsal-m{display:block}}
/* Job page: location card */
.loc-card{display:block;padding:0;overflow:hidden;text-decoration:none;color:var(--ink)}
.loc-art svg{display:block;width:100%;height:96px}
.loc-txt{display:flex;flex-direction:column;gap:3px;padding:14px 18px 16px}
.loc-place{font-family:var(--head);font-weight:700;font-size:17px;line-height:1.3}
.loc-go{font-size:14px;font-weight:700;color:var(--brand)}
.loc-card:hover .loc-go{text-decoration:underline}
.pc-badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
/* Employer page: filter and sort tools */
.emp-tools{padding:16px 18px;margin-bottom:14px}
.et-row{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}
.et-q{flex:1 1 100%;min-height:46px}
.et-sel{flex:1 1 150px;display:flex;flex-direction:column;gap:4px;min-width:0}
.et-sel label{font-size:13px;font-weight:700;color:var(--muted)}
.et-sel select{min-height:46px;border:1px solid #C6D2C9;border-radius:8px;padding:0 10px;font:inherit;font-size:15px;background:#fff;color:var(--ink);width:100%}
.et-go{flex:0 0 auto}
.et-sum{margin:12px 0 0;font-size:14px;color:var(--muted)}
.pager span{align-self:center;padding:0 8px;font-size:14px;color:var(--muted)}
@media (max-width:640px){.et-sel{flex:1 1 calc(50% - 6px)}.et-go{width:100%}}
.emp-intro{padding:18px 22px}
/* ---- Advertise page ---- */
.sell-hero{padding-bottom:130px;text-align:center}
.sell-hero .page-h1,.sell-hero .page-sub{margin-left:auto;margin-right:auto}
.sell-hero .page-sub a{color:var(--gold-light);font-weight:700}
.offer-pill{display:inline-flex;align-items:center;gap:8px;margin-top:6px;background:rgba(212, 176, 124,.16);border:1px solid rgba(212, 176, 124,.5);color:var(--gold-light);border-radius:999px;padding:6px 14px;font-size:14px;font-weight:700}
.sell-page{display:flex;flex-direction:column;gap:44px}
.sell-page h3{font-family:var(--head)}
.sell-plans-wrap{margin-top:-100px;position:relative}
.sell-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}
.plan{padding:26px;position:relative;box-shadow:0 4px 14px rgba(70,38,63,.06);display:flex;flex-direction:column}
.plan-pop{border:3px solid var(--gold);background:#FAF5EA;box-shadow:0 12px 30px rgba(122,90,48,.18)}
.pop-tag{position:absolute;top:-13px;left:26px;background:var(--gold);color:var(--brand-deep);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:5px 12px}
.plan h3{margin:0;font-size:24px}
.plan-tag{margin:6px 0 0;color:var(--muted);font-size:15px}
.plan-price{display:flex;align-items:baseline;gap:12px;margin-top:18px;flex-wrap:wrap}
.plan .price{font-family:var(--head);font-weight:700;font-size:44px;line-height:1;color:var(--brand-deep)}
.plan .rrp{font-size:15px;color:var(--muted-2)}
.plan-vat{margin:8px 0 0;font-size:14px;color:var(--muted-2)}
.plan .save{display:inline-block;background:#E3F3E8;color:#1E6B3A;font-weight:700;border-radius:999px;padding:3px 10px;margin-right:4px}
.inc{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-direction:column;gap:10px;font-size:15px;line-height:1.45}
.inc li{display:flex;gap:10px;align-items:flex-start}.inc svg{flex:0 0 auto;margin-top:1px;color:#1E6B3A}
.plan-cta{width:100%;margin-top:22px}
.sell-help{text-align:center;margin:18px 0 0;color:var(--muted);font-size:15px}
.rc-dl{margin:14px 0 0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 14px}.rc-dl .btn-line{display:inline-flex;align-items:center;gap:8px}.rc-dl span{font-size:14px;color:var(--muted)}   /* rate card PDF (RateCard.php) */
.cmp-card{padding:8px 18px 6px}
.cmp-card h2{font-family:var(--head);font-size:20px;margin:14px 0 6px}
.cmp-scroll{overflow-x:auto}
.cmp{width:100%;border-collapse:collapse;min-width:620px;font-size:15px}
.cmp th,.cmp td{padding:11px 12px;border-bottom:1px solid var(--line-2);text-align:center}
.cmp th[scope=row],.cmp thead th:first-child{text-align:left;font-weight:600;color:var(--ink-2)}
.cmp thead th{font-family:var(--head);font-size:16px;color:var(--ink);vertical-align:bottom}
.cmp .cmp-pop{background:#FAF5EA}.cmp thead .cmp-pop span{display:block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#7A5A30}
.cmp .yes{color:#1E6B3A}.cmp .no{color:#A9B5BA}
.cmp-price th,.cmp-price td{border-bottom:0;font-family:var(--head);font-weight:700;font-size:17px;color:var(--brand-deep)}
.sell-insight{display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between;padding:22px 24px;border-top:4px solid var(--gold)}
.ai-text{flex:1 1 460px}.ai-text h2{font-family:var(--head);font-size:22px;margin:0}.ai-text p{margin:6px 0 14px;color:var(--muted)}
.ai-stats{flex:1 1 420px;display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}
.ai-stats div{background:#FAF5EA;border:1px solid #D2AE82;border-radius:12px;padding:14px}
.ai-stats b{display:block;font-family:var(--head);font-size:28px;color:var(--brand)}.ai-stats span{font-size:13px;color:var(--muted)}
.sell-logos{padding:20px 24px;overflow:hidden}
.sell-marquee{overflow:hidden;margin-top:10px;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.sell-track{display:flex;gap:12px;width:max-content;animation:advscroll 60s linear infinite}
.sell-track .logo-tile{width:140px;flex:0 0 auto;min-height:80px}.sell-track .logo-tile img{max-height:60px;max-width:100%;object-fit:contain}
.sell-marquee:hover .sell-track{animation-play-state:paused}
@keyframes advscroll{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.sell-marquee{overflow-x:auto;-webkit-mask-image:none;mask-image:none;padding-bottom:6px}.sell-track{animation:none;width:max-content}.sell-track>[aria-hidden="true"]{display:none}}
.sell-addons{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:16px;margin-top:18px}
.addon{padding:20px;border-top:4px solid var(--gold);background:linear-gradient(180deg,#FAF5EA 0%,#fff 60%)}
.addon-top{display:flex;justify-content:space-between;align-items:center}
.addon .plus{width:32px;height:32px;border-radius:999px;background:var(--gold);color:var(--brand-deep);display:inline-flex;align-items:center;justify-content:center;font-family:var(--head);font-weight:700;font-size:20px}
.addon-price{font-family:var(--head);font-weight:700;font-size:18px;background:#F1E6D2;border:1px solid #D2AE82;border-radius:999px;padding:4px 12px}
.addon{display:flex;flex-direction:column}.addon-acts{margin-top:auto;padding-top:16px;display:flex;flex-wrap:wrap;gap:8px}.addon-acts a{font-size:14px;padding:8px 14px}.addon-note{font-size:13px!important;margin-top:8px!important}
.addon h3{margin:14px 0 0;font-size:19px}.addon p{margin:6px 0 0;color:var(--muted);font-size:15px;line-height:1.5}
.sell-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:20px;margin-top:18px}
.sell-two .h3{margin:0;font-size:22px}.sell-two .muted{margin:6px 0 14px;color:var(--muted)}
.credit{display:flex;justify-content:space-between;align-items:center;background:var(--bg);border-radius:10px;padding:14px 16px;margin-top:10px}
.sell-partner{background:var(--brand);color:#fff;border-radius:14px;padding:24px}
.sell-partner .eb{margin:0 0 4px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}
.sell-partner .inc{color:#E5ECE6}.sell-partner .inc svg{color:var(--gold)}
.sell-lead{margin:8px auto 0;text-align:center;color:var(--muted);font-size:16px;max-width:640px}
.sell-steps{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:24px}
.sell-steps li{display:flex;flex-direction:column;gap:8px}
.sell-steps .num{width:40px;height:40px;border-radius:999px;background:var(--brand);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-family:var(--head);font-weight:700;font-size:19px}
.sell-steps h3{margin:0;font-size:19px}.sell-steps p{margin:0;color:var(--muted);line-height:1.5}
.sell-why{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:20px}
.sell-why .card{padding:22px}.sell-why h3{margin:0;font-size:19px}.sell-why p{margin:8px 0 0;color:var(--muted);line-height:1.5}
.sell-faq{padding:10px 28px 14px}.sell-faq h2{font-family:var(--head);font-size:24px;margin:16px 0 4px}
details.q{border-bottom:1px solid var(--line-2);padding:12px 0}details.q:last-child{border-bottom:0}
details.q summary{cursor:pointer;font-weight:700;font-size:16px;min-height:32px;display:flex;align-items:center}
details.q p{margin:8px 0 0;line-height:1.6;color:var(--ink-2)}
.sell-seo-h{margin:0 0 10px;font-family:var(--head);font-size:20px}
.sell-cta{background:var(--brand);border-radius:16px;padding:32px;display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between;color:#fff}
.sell-cta>div:first-child{flex:1 1 420px}.sell-cta h2{margin:0;font-family:var(--head);font-size:28px}.sell-cta p{margin:8px 0 0;color:var(--on-dark)}
.sell-cta p a{color:var(--gold-light);font-weight:700}.sell-cta-btns{display:flex;gap:12px;flex-wrap:wrap}
@media (max-width:980px){.sell-plans{grid-template-columns:1fr;max-width:560px;margin:0 auto}.plan-pop{order:-1}.plan-standard{order:1}
  /* no overlap of the price cards onto the header on phones/tablets: some browsers (larger text settings) pushed them over the title */
  .sell-hero{padding-bottom:36px!important}.sell-plans-wrap{margin-top:34px}}
@media (max-width:640px){.sell-hero{padding-bottom:110px}.sell-page{gap:32px}.plan{padding:22px}.plan .price{font-size:38px}.sell-faq{padding:6px 18px 10px}.sell-cta{padding:24px}.sell-cta-btns a{width:100%;justify-content:center}}
.sell-page>section{min-width:0;width:100%}.sell-logos,.cmp-card{min-width:0}
.plan .price{padding:0;margin:0;background:none;border:0}
/* Search: distance and salary */
.field-r select{border:0;background:transparent;font:inherit;font-size:16px;color:var(--ink);min-height:50px;padding:0 6px;cursor:pointer}
.sal-row{display:flex;gap:8px;margin:6px 0 8px}
.sal-row select{flex:1 1 0;min-width:0;min-height:44px;border:1px solid #C6D2C9;border-radius:8px;padding:0 8px;font:inherit;font-size:15px;background:#fff;color:var(--ink)}
@media (max-width:640px){.field-r{flex:1 1 100%!important}.field-r select{width:100%}}
/* ---- Premium / Featured jobs pages ---- */
.tier-badges{display:flex;align-items:center;gap:12px;margin-top:10px;flex-wrap:wrap}
.b-gold{background:var(--gold);color:var(--brand-deep)}
.tier-count{color:var(--gold-light);font-weight:700}
.tier-layout{padding-top:24px;padding-bottom:48px;display:flex;flex-wrap:wrap;gap:28px;align-items:flex-start}
.tier-main{flex:999 1 640px;min-width:0;display:flex;flex-direction:column;gap:14px}
.tier-side{flex:1 1 300px;min-width:0;display:flex;flex-direction:column;gap:18px}
.tier-tools{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
.tier-job{padding:22px;display:flex;flex-wrap:wrap;gap:20px;align-items:center}
.tier-prem{border:2px solid var(--gold);background:var(--cream)}
.tier-job .lg,.tier-job .mono{width:92px;height:92px;flex:0 0 auto}
.tj-body{flex:1 1 380px;min-width:0}
.tj-body .top-line{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13px;color:var(--muted-2)}
.tj-body h2{margin:8px 0 4px;font-size:22px;line-height:1.2}.tj-body h2 a{color:var(--ink);text-decoration:none}.tj-body h2 a:hover{color:var(--brand);text-decoration:underline}
.tj-emp{font-weight:700;color:var(--brand)}
.tj-body .meta{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:14px}
.tj-go{flex:0 0 auto}
.tier-link{display:block;font-weight:700;padding:6px 0}
@media (max-width:640px){.tier-job{padding:18px;gap:14px}.tier-job .lg,.tier-job .mono{width:64px;height:64px}.tj-go{width:100%}}
.clamp2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
/* ---- Location pages ---- */
.loc-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:20px;max-width:900px}
.loc-stats .stat{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:12px 14px;color:var(--on-dark)}
.loc-stats .stat b{display:block;font-family:var(--head);font-size:24px;color:#fff;line-height:1.15}.loc-stats .stat span{font-size:13px}
.loc-page{padding-top:24px;padding-bottom:48px;display:flex;flex-direction:column;gap:28px}
.loc-h2{font-family:var(--head);font-size:21px;margin:0 0 10px}
.area-chips{display:flex;flex-wrap:wrap;gap:8px}
.area{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid #C6D2C9;background:#fff;text-decoration:none;font-weight:700;font-size:15px;color:var(--ink-2)}
.area .n{background:var(--tint);color:var(--brand);border-radius:999px;padding:1px 8px;font-size:12px}
.area:hover{border-color:var(--brand);color:var(--brand)}
.area.dim{font-weight:600;color:var(--muted-2)}.area.dim .n{background:var(--line-2);color:var(--muted-2)}
.loc-layout{display:flex;flex-wrap:wrap;gap:28px;align-items:flex-start}
.loc-main{flex:999 1 640px;min-width:0;display:flex;flex-direction:column;gap:12px}
.loc-side{flex:1 1 300px;min-width:0;display:flex;flex-direction:column;gap:18px}
.loc-list-head{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px}
.loc-list-head .loc-h2{margin:0}.loc-list-head .go{font-weight:700;font-size:15px}
.loc-job{display:flex;gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px;text-decoration:none;color:var(--ink)}
.loc-job:hover{border-color:var(--brand)}.loc-job:hover .lj-t{color:var(--brand);text-decoration:underline}
.loc-prem{border:2px solid var(--gold);background:var(--cream)}
.loc-job .lg,.loc-job .mono{width:52px;height:52px;flex:0 0 auto}
.lj-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:3px}
.lj-top{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.lj-when{font-size:13px;color:var(--muted-2)}
.lj-t{font-family:var(--head);font-weight:600;font-size:17px;line-height:1.3}
.lj-who{font-size:14px;color:var(--muted)}.lj-who b{color:var(--brand)}
.lj-pay{font-size:14px;font-weight:700;text-align:right;max-width:190px;flex:0 0 auto}
.loc-empty{padding:20px 22px;border-left:4px solid var(--brand)}
.loc-empty .t{margin:0;font-family:var(--head);font-size:20px;font-weight:700}.loc-empty p:not(.t){margin:6px 0 0;color:var(--muted);line-height:1.55}
.loc-copy{padding:22px 24px;margin-top:12px}.loc-copy p:not(.eyebrow){margin:0 0 12px;color:var(--ink-2);line-height:1.7}
.loc-near{padding:18px 20px}
.loc-near a{display:flex;justify-content:space-between;padding:7px 0;font-weight:700;font-size:15px;border-bottom:1px solid var(--line-2)}
.loc-near a:last-child{border-bottom:0}.loc-near .lv{font-weight:400;color:var(--muted-2);font-size:13px}
.loc-extra{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr));gap:24px}
.loc-sal{padding:22px 24px}
.tbl{width:100%;border-collapse:collapse;font-size:15px}.tbl th,.tbl td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line-2)}.tbl th{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.loc-note{margin:10px 0 0;font-size:13px;color:var(--muted-2)}
@media (max-width:640px){.loc-job{align-items:flex-start;padding:14px}.lj-pay{display:none}}
/* Jobs by area index */
.hub-grid{columns:3 320px;column-gap:20px}
.hub-region{break-inside:avoid;padding:18px 20px;margin-bottom:20px;display:inline-block;width:100%}
.hub-region h2{margin:0 0 8px;font-family:var(--head);font-size:20px;display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.hub-region h2 a{color:var(--ink);text-decoration:none}.hub-region h2 a:hover{color:var(--brand);text-decoration:underline}
.hub-region h2 .n{font-size:13px;font-weight:700;color:var(--brand);background:var(--tint);border-radius:999px;padding:2px 10px;white-space:nowrap}
.hub-list,.hub-list ul{list-style:none;margin:0;padding:0;font-size:14px;line-height:1.9}
.hub-list ul{padding-left:14px;border-left:2px solid var(--line-2);margin:2px 0 6px}
.hub-list a{font-weight:700}.hub-list a.dim{font-weight:400;color:var(--muted)}
.hub-list .n{font-size:12px;color:var(--brand);background:var(--tint);border-radius:999px;padding:0 7px}
/* ---- Job title pages ---- */
.role-alert{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:18px 20px;border:1.5px dashed var(--brand);margin-top:4px}
.role-alert .t{margin:0;font-family:var(--head);font-size:17px;font-weight:600;flex:1 1 260px}
.role-alert input{flex:1 1 220px;min-height:44px;border:1px solid #C6D2C9;border-radius:8px;padding:0 12px;font:inherit;font-size:16px}
.role-copy{padding:24px 26px;margin-top:12px}.role-copy h3{font-family:var(--head);font-size:18px;margin:18px 0 8px}
.role-copy ul{margin:0 0 12px;padding-left:20px;line-height:1.7}.role-copy p:not(.eyebrow){line-height:1.7;color:var(--ink-2)}
.role-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:14px}
.role-tile{display:flex;flex-direction:column;gap:6px;padding:18px 20px;text-decoration:none;color:var(--ink)}
.role-tile:hover{border-color:var(--brand)}.role-tile:hover .nm{color:var(--brand);text-decoration:underline}
.role-tile .nm{font-family:var(--head);font-weight:700;font-size:18px}.role-tile .sm{font-size:14px;color:var(--muted);line-height:1.5}
.role-tile .n{margin-top:auto;font-size:13px;font-weight:700;color:var(--brand)}
/* ---- Booking ---- */
.book-ways{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:16px;margin-bottom:28px}
.way{padding:22px;display:flex;flex-direction:column;position:relative}
.way h2{margin:0;font-family:var(--head);font-size:22px}.way p{margin:6px 0 14px;color:var(--ink-2);line-height:1.55}
.way-email{border:3px solid var(--gold);background:#FAF5EA}
.small{font-size:14px;color:var(--muted)}
.fhint{margin:6px 0 0;font-size:13px;color:var(--muted-2);background:none;padding:0}
.book-layout{display:flex;flex-wrap:wrap;gap:28px;align-items:flex-start}
.book-form{flex:999 1 640px;min-width:0;display:flex;flex-direction:column;gap:20px}
.book-side{flex:1 1 330px;min-width:0;position:sticky;top:20px;display:flex;flex-direction:column;gap:14px}
.book-sec{padding:24px}
.step{display:flex;align-items:center;gap:12px;margin-bottom:16px}.step h2{margin:0;font-family:var(--head);font-size:21px}
.step .num{width:32px;height:32px;border-radius:999px;background:var(--brand);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-family:var(--head);font-weight:700}
.optl{display:inline;font-weight:400;color:var(--muted-2);font-size:.85em}
.plan-pick{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}
.pp{position:relative;display:flex;flex-direction:column;gap:4px;border:1.5px solid #C6D2C9;border-radius:12px;padding:16px 16px 14px;cursor:pointer;background:#fff}
.pp input{position:absolute;opacity:0;pointer-events:none}
.pp:has(input:checked){border:3px solid var(--gold);background:#FAF5EA;padding:14.5px 14.5px 12.5px}
.pp:has(input:focus-visible){outline:3px solid var(--brand);outline-offset:2px}
.pp .pn{font-family:var(--head);font-weight:700;font-size:18px}.pp .pv{font-family:var(--head);font-weight:700;font-size:30px;color:var(--brand-deep)}
.pp .pr{font-size:13px;color:var(--muted-2)}.pp .pr strong{color:#1E6B3A}.pp .pt{font-size:14px;color:var(--muted)}
.xtra{display:flex;gap:14px;align-items:center;border:1.5px solid #C6D2C9;border-radius:12px;padding:14px 16px;cursor:pointer;margin-top:10px}
.xtra:has(input:checked){border-color:var(--gold);background:#FAF5EA}
.xtra input{width:22px;height:22px;accent-color:var(--brand);flex:0 0 auto}.xtra .xt{flex:1 1 auto;color:var(--muted)}.xtra .xt strong{color:var(--ink);font-family:var(--head)}
.xtra .xp{font-family:var(--head);font-size:17px;white-space:nowrap}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:16px}
.book-sec .f{display:flex;flex-direction:column;gap:6px;border:0;padding:0;margin:0;min-width:0}
.book-sec label:not(.check):not(.xtra):not(.pp):not(.drop),.lab{font-size:14px;font-weight:700;color:var(--ink)}
.book-sec input[type=text],.book-sec input[type=email],.book-sec input[type=url],.book-sec input[type=tel],.book-sec textarea{width:100%;min-height:46px;border:1px solid #C6D2C9;border-radius:8px;padding:10px 12px;font:inherit;font-size:16px;background:#fff}
.book-sec .bad input,.book-sec .bad .drop{border:2px solid #B42318}
.err{margin:4px 0 0;color:#B42318;font-size:14px;font-weight:700}
.err-box{background:#FEF3F2;border:2px solid #B42318;border-radius:12px;padding:16px 20px}
.err-box .t{margin:0;font-family:var(--head);font-size:19px;font-weight:700;color:#B42318}.err-box ul{margin:8px 0 0;padding-left:20px;line-height:1.8}
.drop{display:flex;flex-direction:column;align-items:center;gap:6px;border:2px dashed #9FB7C0;border-radius:12px;padding:22px;text-align:center;color:var(--muted);cursor:pointer;background:var(--bg)}
.drop.over,.drop:hover{border-color:var(--brand);background:var(--tint)}
.sr-file{position:absolute;width:1px;height:1px;opacity:0}
.sr-file:focus-visible+.file-list,.drop:focus-within{outline:3px solid var(--brand)}
.file-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.file-list .chip strong{color:var(--brand);font-size:12px}
.seg-radio{display:inline-flex;flex-wrap:wrap;border:1px solid #C6D2C9;border-radius:10px;overflow:hidden;background:#fff}
.seg-radio label{position:relative;cursor:pointer}.seg-radio input{position:absolute;opacity:0}
.seg-radio span{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;font-weight:700;font-size:15px;color:var(--ink-2)}
.seg-radio input:checked+span{background:var(--brand);color:#fff}.seg-radio input:focus-visible+span{outline:3px solid var(--gold);outline-offset:-3px}
.check{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.5;cursor:pointer}
.check input{width:20px;height:20px;margin-top:2px;accent-color:var(--brand);flex:0 0 auto}
.check.bad{color:#B42318}
.book-sum{padding:22px;border-top:4px solid var(--gold)}
.book-sum .t,.t2{margin:0 0 10px;font-family:var(--head);font-size:20px;font-weight:700}.t2{font-size:16px}
.sum{display:flex;justify-content:space-between;gap:10px;padding:5px 0;font-size:15px}
.sum-total{border-top:1px solid var(--line-2);margin-top:8px;padding-top:8px}
.sum.tot{font-size:19px;font-family:var(--head);font-weight:700}
.save-pill{margin:10px 0 0;display:inline-flex;font-size:13px;font-weight:700;color:#1E6B3A;background:#E3F3E8;border-radius:999px;padding:4px 10px}
.next-list{margin:0;padding-left:18px;font-size:14px;color:var(--ink-2);line-height:1.6}
.book-submit-m{display:none}
.book-done{padding-top:24px;padding-bottom:56px;display:flex;flex-wrap:wrap;gap:24px;align-items:flex-start}
.book-done>section{flex:999 1 560px}.book-done>.book-sum{flex:1 1 300px}
@media (max-width:980px){.book-side{position:static}.book-submit-m{display:flex;width:100%}}
[hidden]{display:none!important}
.seg-radio{align-self:flex-start}
/* ---- About, legal, site map ---- */
.info-top{background:var(--bg)}.info-top .crumbs{padding-top:16px}
.info-layout{padding-top:14px;padding-bottom:56px;display:flex;flex-wrap:wrap;gap:32px;align-items:flex-start}
.info-side{flex:1 1 240px;min-width:0;position:sticky;top:20px}
.toc{display:flex;flex-direction:column;border-left:2px solid var(--line)}
.toc a{padding:6px 0 6px 14px;margin-left:-2px;border-left:2px solid transparent;text-decoration:none;color:var(--ink-2);font-size:15px}
.toc a:hover{border-left-color:var(--brand);color:var(--brand)}
.info-body{flex:999 1 640px;min-width:0;padding:34px 40px}
.info-body h1{margin:0 0 10px;font-family:var(--head);font-size:38px;line-height:1.1}
.info-body h2{font-family:var(--head);font-size:23px;margin:28px 0 8px;scroll-margin-top:20px}
.info-body h3{font-family:var(--head);font-size:18px;margin:18px 0 6px}
.info-body p,.info-body li{line-height:1.7;color:var(--ink-2)}
.info-body ul{padding-left:22px}
.info-meta{font-size:14px;color:var(--muted-2)!important;margin:0 0 10px}
.in-short{background:var(--tint);border-radius:12px;padding:16px 20px;margin:16px 0 6px}.in-short ul{margin:0}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:20px 0 8px}
.facts div{background:var(--bg);border-radius:12px;padding:14px 16px}.facts b{display:block;font-family:var(--head);font-size:24px;color:var(--brand)}.facts span{font-size:14px;color:var(--muted)}
@media (max-width:640px){.info-body{padding:24px 20px}.info-body h1{font-size:30px}.info-side{position:static;order:2}}
.sitemap{padding-top:26px;padding-bottom:48px;columns:2 460px;column-gap:20px}
.sitemap section{break-inside:avoid;display:inline-block;width:100%;padding:20px 24px;margin-bottom:20px}
.sitemap h2{margin:0 0 8px;font-family:var(--head);font-size:21px}.sitemap h3{margin:14px 0 4px;font-family:var(--head);font-size:16px}
.sitemap h3 a{color:var(--ink)}
.sitemap ul{list-style:none;margin:0;padding:0;font-size:14px;line-height:1.9}
.sitemap ul.cols{columns:2 180px;column-gap:16px}
/* Cookie choices */
.cookie-bar{position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--brand-deep);color:#fff;box-shadow:0 -6px 24px rgba(0,0,0,.2)}
.cookie-in{display:flex;flex-wrap:wrap;gap:14px 24px;align-items:center;justify-content:space-between;padding-top:14px;padding-bottom:14px}
.cookie-in p{margin:0;flex:1 1 520px;font-size:15px;line-height:1.5;color:var(--on-dark)}.cookie-in p strong{color:#fff}.cookie-in a{color:var(--gold-light)}
.cookie-btns{display:flex;gap:10px;flex-wrap:wrap}.cookie-btns .btn-line{background:transparent;color:#fff;border-color:rgba(255,255,255,.6)}
.info-body table{width:100%;border-collapse:collapse;font-size:14px;margin:10px 0}.info-body th,.info-body td{text-align:left;vertical-align:top;padding:9px 8px;border-bottom:1px solid var(--line-2)}.info-body th{font-size:13px;color:var(--muted)}
@media (max-width:640px){.cookie-btns{width:100%}.cookie-btns button{flex:1 1 0}.info-body table{display:block;overflow-x:auto}}
/* ---- Advice & reports ---- */
.art-top{background:var(--bg)}.art-top .crumbs{padding-top:16px}
.art-h1{margin:6px 0 0;font-family:var(--head);font-size:40px;line-height:1.12;max-width:900px}
.art-meta{margin:10px 0 0;font-size:14px;color:var(--muted-2)}
.linkish{background:none;border:0;padding:0;font:inherit;color:var(--brand);text-decoration:underline;cursor:pointer}
.art-layout{padding-top:24px;padding-bottom:56px;display:grid;grid-template-columns:220px minmax(0,1fr) 300px;gap:32px;align-items:start}
.art-toc{position:sticky;top:20px}
.art-body{min-width:0;font-size:17px}
.art-body h2{font-family:var(--head);font-size:25px;margin:30px 0 10px;scroll-margin-top:20px}
.art-body h3{font-family:var(--head);font-size:19px;margin:20px 0 6px}
.art-body p,.art-body li{line-height:1.75;color:var(--ink-2)}
.art-body ul,.art-body ol{padding-left:22px}
.art-body table{width:100%;border-collapse:collapse;font-size:15px;margin:12px 0;display:block;overflow-x:auto}
.art-body th,.art-body td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line-2)}.art-body th{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.art-side{display:flex;flex-direction:column;gap:18px;position:sticky;top:20px}
.side-job{display:flex;flex-direction:column;gap:2px;padding:9px 0;border-bottom:1px solid var(--line-2);text-decoration:none;color:var(--ink);font-size:14px}
.side-job span{color:var(--muted);font-size:13px}.side-job:hover strong{color:var(--brand);text-decoration:underline}
.cite{font-size:14px;color:var(--muted)!important;border-top:1px solid var(--line-2);padding-top:12px;margin-top:24px}
.sal-chart{margin:0 0 20px;padding:18px 20px}
.sal-chart figcaption{font-size:14px;color:var(--muted);margin-bottom:12px}
.sb-row{display:grid;grid-template-columns:minmax(120px,210px) 1fr 52px;gap:12px;align-items:center;padding:6px 0;font-size:14px}
.sb-l{color:var(--ink-2)}.sb-v{font-weight:700;text-align:right}
.sb-track{position:relative;height:14px;background:var(--line-2);border-radius:999px}
.sb-bar{position:absolute;top:0;bottom:0;background:var(--brand);border-radius:999px;opacity:.85}
.sb-mid{position:absolute;top:-4px;width:4px;height:22px;margin-left:-2px;background:var(--gold);border-radius:2px}
.sb-axis{display:flex;justify-content:space-between;margin-left:calc(min(210px,40%) + 12px);margin-right:64px;font-size:12px;color:var(--muted-2)}
.keep{margin-top:36px}.guide-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(250px,100%),1fr));gap:14px}
.guide{display:flex;flex-direction:column;gap:6px;padding:18px 20px;text-decoration:none;color:var(--ink)}
.guide:hover{border-color:var(--brand)}.guide:hover .gt{color:var(--brand);text-decoration:underline}
.guide .eyebrow{margin:0}.guide .gt{font-family:var(--head);font-weight:700;font-size:18px;line-height:1.3}.guide .gd{font-size:14px;color:var(--muted);line-height:1.5}
.guide .gm{margin-top:auto;font-size:13px;color:var(--muted-2);padding-top:6px}
.guide-new{border:2px solid var(--gold);background:var(--cream)}
.hub-feature{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:20px}
.mr-card{display:flex;flex-direction:column;gap:8px;padding:26px 28px;text-decoration:none;color:var(--ink);border:2px solid var(--gold);background:var(--cream)}
.mr-card .mr-t{font-family:var(--head);font-weight:700;font-size:28px;line-height:1.2}.mr-card .mr-d{color:var(--ink-2);line-height:1.6}
.mr-card:hover .mr-t{color:var(--brand);text-decoration:underline}
.mr-list{padding:20px 22px}.mr-list>a{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--line-2);font-weight:700}
.hub-sal{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;padding:24px 26px;align-items:start}
@media (max-width:1100px){.art-layout{grid-template-columns:minmax(0,1fr) 300px}.art-toc{display:none}}
@media (max-width:860px){.art-layout{grid-template-columns:1fr}.art-side{position:static}.art-h1{font-size:30px}.hub-feature,.hub-sal{grid-template-columns:1fr}.sb-axis{display:none}}
/* booking: compare pop-up, dates, card logos */
.cmp-dlg{border:0;border-radius:16px;padding:0;max-width:min(860px,94vw);width:100%;box-shadow:0 24px 60px rgba(0,0,0,.3)}
.cmp-dlg::backdrop{background:rgba(48,26,44,.55)}
.cmp-dlg-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line-2);position:sticky;top:0;background:#fff}
.cmp-dlg-head h2{margin:0;font-family:var(--head);font-size:20px}.cmp-dlg .cmp-scroll{padding:4px 18px 14px}
.book-sec input[type=date]{width:100%;min-height:46px;border:1px solid #C6D2C9;border-radius:8px;padding:8px 12px;font:inherit;font-size:16px;background:#fff}
.book-sec input[type=date]:disabled{background:var(--bg);color:var(--muted-2)}
.cards-ok{display:flex;gap:8px;justify-content:center;align-items:center;margin:10px 0 0}.cards-ok img{display:block;height:24px;width:auto}
.sell-steps .cards-ok{justify-content:flex-start}
/* ---- News & insights ---- */
.news-list-layout{padding-top:28px;padding-bottom:56px;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:32px;align-items:start}
.news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:14px}
.news-card{display:flex;flex-direction:column;gap:8px;padding:18px 20px;text-decoration:none;color:var(--ink)}
.news-card:hover{border-color:var(--brand)}.news-card:hover .nt{color:var(--brand);text-decoration:underline}
.news-card .nd{font-size:13px;color:var(--muted-2)}.news-card .nt{font-family:var(--head);font-weight:700;font-size:18px;line-height:1.3}
.news-card .nx{font-size:14px;color:var(--muted);line-height:1.55}.news-card .nr{margin-top:auto;font-size:14px;font-weight:700;color:var(--brand)}
.news-layout{grid-template-columns:minmax(0,1fr) 300px}
.art-body img{max-width:100%;height:auto;border-radius:10px}
@media (max-width:860px){.news-list-layout,.news-layout{grid-template-columns:1fr}}
/* honeypot field on alert forms (bots fill it in, people never see it) */
.hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0}
/* Job alerts page */
.ap-done{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:20px;align-items:start;padding-top:24px;padding-bottom:56px}
@media (max-width:900px){.ap-done{grid-template-columns:1fr}}
.alert-page-form{padding:24px;border-top:4px solid var(--gold)}
.ap-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.ap-grid .ap-wide{grid-column:1/-1}
@media (max-width:560px){.ap-grid{grid-template-columns:1fr}}
.ap-sel{width:100%;min-height:46px;border:1px solid #C6D2C9;border-radius:8px;padding:0 10px;font:inherit;font-size:16px;background:#fff;color:var(--ink)}
.ap-opt{font-weight:400;color:var(--muted)}
.ap-freq{border:0;padding:0;margin:16px 0}
.ap-freq legend{font-size:14px;font-weight:700;margin-bottom:6px;padding:0}
.alert-page-form .btn-gold{width:100%}
/* Job page after applying */
.apply-done{margin-top:24px;background:var(--tint);border:1.5px solid var(--ok,#1E7A46);border-radius:12px;padding:24px;outline:0}
.apply-done .tick{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#1E7A46;color:#fff;font-size:22px;font-weight:700;margin:0 0 10px}
.apply-done h2{margin:0 0 8px;font-size:24px;line-height:1.25}
.apply-done>p{margin:0 0 14px}
.apply-alert{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--line);border-radius:10px;padding:16px 18px;margin:16px 0 12px}
.apply-alert .t{margin:0;font-family:var(--head);font-size:18px;font-weight:700;color:var(--brand)}
.apply-alert .s{margin:4px 0 0;color:var(--ink-2);font-size:15px}
.apply-done .more{font-weight:700;font-size:15px;margin:0}
/* Booking thank-you: add-ons they didn't take */
.book-more{margin-top:24px;border-top:1px solid var(--line-2);padding-top:18px}
.book-more h3{margin:0 0 4px;font-size:18px}
.bm-row{display:flex;justify-content:space-between;gap:14px;align-items:baseline;padding:10px 0;border-bottom:1px solid var(--line-2);font-size:15px}
.bm-row b{white-space:nowrap;color:var(--brand)}
/* scheduled-article preview */
.preview-bar{background:#F1E6D2;color:#5E4423;font-weight:700;text-align:center;padding:10px 16px;font-size:15px}
.b-refreshed{background:#EDF7F4;color:#102A43}

/* ---- Phones (Oct 2026 mobile pass) ---- */
.m-only{display:none}
@media (max-width:900px){
  .m-only{display:block}.m-hide{display:none}
}
@media (max-width:640px){
  .ann-long{display:none}
  /* homepage: 4 Premium jobs, then "View all Premium jobs" */
  section[aria-labelledby="premium"] .pgrid>:nth-child(n+5){display:none}
  /* employer page: a slimmer banner */
  .emp-banner{height:64px}.emp-banner.has-img,.emp-banner-auto{height:100px}
  /* A–Z: type tabs and the featured / hiring cards scroll sideways instead of filling screens */
  .tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-right:-16px;padding-right:16px}
  .tabs::-webkit-scrollbar{display:none}.tabs a{flex:0 0 auto}
  section[aria-labelledby="promo-h"] .hire-grid,section[aria-labelledby="also-h"] .hire-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding-bottom:6px;margin-right:-16px;padding-right:16px}
  section[aria-labelledby="promo-h"] .hire-grid>*,section[aria-labelledby="also-h"] .hire-grid>*{flex:0 0 82%;scroll-snap-align:start}
  /* advertise: the comparison table fits the screen */
  .cmp{min-width:0;font-size:13px}.cmp th,.cmp td{padding:9px 5px}.cmp thead th{font-size:13px}
  .cmp th[scope=row]{font-size:13px;line-height:1.35}
  /* market report: salary bars with the label above */
  .sb-row{grid-template-columns:1fr 48px;row-gap:4px}.sb-l{grid-column:1 / -1}
}
/* employer logo / name on job cards link to the employer page */
a.logo-link{display:inline-flex;flex:0 0 auto;align-self:flex-start;height:max-content;border-radius:12px;transition:box-shadow .15s}a.logo-link:hover{box-shadow:0 0 0 3px var(--gold)}
a.emp-link{color:inherit;text-decoration:none}a.emp-link:hover{text-decoration:underline}
.sell-talk{margin:22px 0 0;text-align:center;font-size:17px;line-height:1.6}.sell-talk a{white-space:nowrap}
/* a button that's sending: spinner + "Please wait…" */
.is-busy{cursor:progress!important;opacity:.85}
.is-busy::before{content:"";display:inline-block;width:1em;height:1em;margin-right:.5em;vertical-align:-.15em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:pj-spin .7s linear infinite}
@keyframes pj-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.is-busy::before{animation-duration:2s}}
@media (max-width:600px){.sim{flex-wrap:wrap}.sim>div{flex:1 1 0!important}.sim .sal{flex-basis:100%;max-width:none;padding-left:60px;margin-top:-4px;white-space:normal}}
/* Tablets and open foldables (e.g. Galaxy Fold open, ~650–960px): when the sidebar drops below the main column,
   lay its boxes out two across instead of stretching each one the full width; premium cards two across */
@media (min-width:641px) and (max-width:960px){
  /* two columns that fill up like a newspaper, so a short box never leaves a hole beside a tall one */
  .side,.job-side{display:block;column-count:2;column-gap:18px}
  .side>*,.job-side>*{min-width:0;break-inside:avoid;page-break-inside:avoid;margin:0 0 18px!important;width:100%}
  .job-side>.apply-card,.job-side>.side-apply{column-span:all}
  section[aria-labelledby="premium"] .pgrid>:nth-child(n+9){display:none}
  .pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .search-slim{flex-wrap:nowrap}
  .search-slim .field{flex:1 1 0!important;min-width:0}
  .search-slim .btn-gold{flex:0 0 auto}
  /* home hero search: both boxes and the button on one line */
  .search{flex-wrap:nowrap}
  .search .field{flex:1 1 0!important;min-width:0}
  .search .btn-gold{flex:0 0 auto;padding:0 22px}
  /* job rows: when salary + button drop below the title, run them full width (salary in full, button on the right) */
  .job .right{flex:1 1 100%;justify-content:space-between;flex-wrap:nowrap;padding-left:72px}
  .job.no-logo .right{padding-left:0}   /* employer pages: no logo column to line up with */
  .job .right .chip{max-width:none;white-space:normal}
  .job .right .btn-gold{flex:0 0 auto}
  /* logo tiles: 3 across so 6 make two even rows */
  .logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
/* footer: 4 across, 2 across, or stacked: never three plus one on its own */
@media (min-width:900px){.foot .cols{grid-template-columns:1.3fr 1fr 1fr 1fr}}
@media (min-width:560px) and (max-width:899px){.foot .cols{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:559px){.foot .cols{grid-template-columns:1fr}}
/* article and info tables: clearer lines, a solid line under the headings, light banding */
.art-body th,.art-body td,.info-body th,.info-body td{border-bottom:1px solid #C6D2C9}
.art-body thead th,.art-body tr:first-child th,.info-body thead th,.info-body tr:first-child th{border-bottom:2px solid var(--brand);color:var(--brand-deep)}
.art-body tbody tr:nth-child(even) td,.info-body tbody tr:nth-child(even) td{background:rgba(70,38,63,.04)}
a[href^="tel:"]{white-space:nowrap}   /* phone numbers never split over two lines */
/* floating back to top, and "back to results" on job pages */
.to-top{position:fixed;right:16px;bottom:16px;z-index:30;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border-radius:999px;border:0;background:var(--brand);color:#fff;font:700 14px/1 var(--head);box-shadow:0 6px 18px rgba(48,26,44,.25);cursor:pointer}
.to-top:hover{background:var(--brand-deep)}
body.has-sticky .to-top{bottom:84px}
@media (min-width:901px){body.has-sticky .to-top{bottom:16px}}
.back-results{display:inline-block;margin:2px 0 10px;font-weight:700;font-size:15px;color:var(--brand)}
/* "Compare at a glance": clearer lines and banding, like the article tables */
.cmp th,.cmp td{border-bottom:1px solid #C6D2C9}
.cmp thead th{border-bottom:2px solid var(--brand)}
.cmp tbody tr:nth-child(even) th,.cmp tbody tr:nth-child(even) td:not(.cmp-pop){background:rgba(70,38,63,.04)}
.cmp tbody tr:nth-child(even) .cmp-pop{background:#F2E8D5}
.cmp-price th,.cmp-price td{border-top:2px solid var(--brand)}
/* iPhone/iPad: Safari zooms the page in when you tap a box whose text is under 16px; keep form text at 16px on touch screens */
@media (max-width:900px),(pointer:coarse){input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px!important}}
.cmp-vat{display:block;font-family:var(--body,inherit);font-size:12px;font-weight:600;color:var(--muted)}
.strip+.main{padding-top:26px}.strip .wrap{padding-bottom:22px}   /* home: less space between the logo strip and Spotlight */
.b-agency{background:#EEF0F2;color:#3D4B52;border:1px solid #CBD3D8}
.strap{display:block;font-size:14px;color:var(--muted);margin:2px 0 4px;font-weight:500}
.accent-grey{border-top:4px solid #8A979E!important}
/* Home hero on phones (24 Oct 2026): less text, search as one white card that stands out from the teal,
   popular searches as a single swipeable row, so the first jobs come into view sooner */
.m-only{display:none}
@media (max-width:640px){
  .m-only{display:inline}
  .hero .sub{display:none}
  .hero{padding-bottom:20px}
  .hero .since{font-weight:500;color:var(--on-dark)}
  .hero .search{margin-top:20px;background:#fff;border-radius:14px;padding:6px;gap:0;box-shadow:0 12px 28px rgba(0,0,0,.28)}
  .hero .search .field{border:0;border-radius:0;min-height:52px;padding:0 12px}
  .hero .search .field+.field{border-top:1px solid #DAE3DC}
  .hero .search .btn-gold{margin-top:6px;border-radius:10px}
  .hero .tags{flex-wrap:nowrap;overflow-x:auto;gap:8px;margin:16px -16px 0;padding:0 16px 2px;scrollbar-width:none;
    -webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent)}
  .hero .tags::-webkit-scrollbar{display:none}
  .hero .tags>span{display:none}
  .hero .tag{flex:0 0 auto;min-height:36px;font-size:13px;padding:0 13px;background:rgba(255,255,255,.07)}
}
/* Home hero on tablets / unfolded phones (641-960px): same idea as phones, search as one white bar on a single line */
@media (min-width:641px) and (max-width:960px){
  .m-only{display:inline}
  .hero .sub{display:none}
  .hero{padding-top:28px;padding-bottom:28px}
  .hero h1{font-size:44px}
  .hero .since{font-weight:500;color:var(--on-dark);font-size:19px}
  .hero .search{margin-top:24px;background:#fff;border:0;border-radius:14px;padding:6px;gap:0;box-shadow:0 12px 28px rgba(0,0,0,.28)}
  .hero .search .field{border:0;border-radius:0;min-height:52px}
  .hero .search .field+.field{border-left:1px solid #DAE3DC}
  .hero .search .btn-gold{border-radius:10px;margin-left:6px}
  .hero .tags{flex-wrap:nowrap;overflow-x:auto;gap:8px;margin:18px -24px 0;padding:0 24px 2px;scrollbar-width:none;
    -webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}
  .hero .tags::-webkit-scrollbar{display:none}
  .hero .tags>span{display:none}
  .hero .tag{flex:0 0 auto;background:rgba(255,255,255,.07)}
}
@media (min-width:641px) and (max-width:780px){.hero .search .n-jobs{display:none}.hero .search .field+.field{flex:.8 1 0!important}.hero .search .btn-gold{padding:0 20px}}
.loc-street{display:block;font-size:13px;color:var(--muted);margin-top:2px}
.chip-x{border:0;background:none;color:var(--muted);font-size:16px;line-height:1;padding:0 2px 0 6px;cursor:pointer}.chip-x:hover{color:#B42318}
.pp .pt{margin-bottom:8px}.pp .pq{display:flex;align-items:center;gap:8px;margin-top:auto;font-size:13.5px;font-weight:700;color:var(--ink-2)}.pp .pq select{width:auto;min-width:64px;padding:4px 8px;cursor:pointer}

/* Job titles hub (24 Oct 2026): career ladder + specialism tiles */
.rh-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.rh-chips span{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);color:var(--on-dark);border-radius:999px;padding:6px 14px;font-size:14px}
.rh-chips b{color:var(--gold-light);font-family:var(--head);font-size:16px}
.rh-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;margin-bottom:14px}.rh-head .loc-h2{margin:0}.rh-head p{margin:0;color:var(--muted-2);font-size:15px}
.rh-ladder{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:16px;counter-reset:none}
.rh-ladder li{display:flex}
.rh-step,.rh-sp{position:relative;display:flex;flex-direction:column;gap:8px;width:100%;padding:20px 20px 16px;background:#fff;border:1px solid var(--line);border-radius:14px;text-decoration:none;color:var(--ink);
  transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;overflow:hidden}
.rh-step{border-top:5px solid var(--gold);padding-top:16px}
.rh-step:hover,.rh-sp:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(48,26,44,.12);border-color:var(--brand);color:var(--ink)}
.rh-step:hover .nm,.rh-sp:hover .nm{color:var(--brand)}
.rh-no{font-family:var(--head);font-weight:800;font-size:40px;line-height:1;color:var(--brand);letter-spacing:-1px}
.rh-bars{position:absolute;top:22px;right:20px;display:flex;align-items:flex-end;gap:3px}
.rh-bars i{display:block;width:6px;border-radius:2px;background:var(--line-2)}.rh-bars i.on{background:var(--gold)}
.rh-step .nm,.rh-sp .nm{font-family:var(--head);font-weight:700;font-size:19px;line-height:1.25}
.rh-step .sm,.rh-sp .sm{font-size:14px;color:var(--muted);line-height:1.5}
.rh-pay{align-self:flex-start;background:var(--tint);color:var(--brand-dark);font-weight:700;font-size:13.5px;border-radius:999px;padding:4px 12px}
.rh-foot{margin-top:auto;padding-top:12px;border-top:1px solid var(--line-2);display:flex;align-items:center;gap:10px;font-size:13px}
.rh-n{color:var(--brand);font-weight:700;white-space:nowrap}.rh-n b{font-family:var(--head);font-size:20px;color:var(--brand-deep)}
.rh-new{color:var(--muted-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.rh-go{margin-left:auto;width:30px;height:30px;flex:0 0 30px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:var(--brand-deep);font-weight:800;transition:transform .15s ease}
.rh-step:hover .rh-go,.rh-sp:hover .rh-go{transform:translateX(3px)}
.rh-step.none .rh-n b,.rh-sp.none .rh-n b{color:var(--muted-2)}
.rh-spec{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:16px}
.rh-ic{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;margin-bottom:4px}
.rh-sp{--ac:var(--brand);--acb:var(--tint)}
.rh-sp::before{content:"";position:absolute;right:-40px;top:-40px;width:120px;height:120px;border-radius:50%;background:var(--acb);opacity:.7}
.rh-sp .rh-ic{position:relative;background:var(--acb);color:var(--ac)}
.rh-sp.c0{--ac:#102A43;--acb:#EDF7F4}.rh-sp.c1{--ac:#7A5A30;--acb:#F1E6D2}.rh-sp.c2{--ac:#B4442E;--acb:#FBE4DE}
.rh-sp.c3{--ac:#6B4E2E;--acb:#F1E7DA}.rh-sp.c4{--ac:#1E6B3A;--acb:#DFF1E5}.rh-sp.c5{--ac:#4B4A9C;--acb:#E6E6F7}
@media (prefers-reduced-motion:reduce){.rh-step,.rh-sp,.rh-go{transition:none}.rh-step:hover,.rh-sp:hover{transform:none}}

/* Jobs by area hub (24 Oct 2026): tile map, busiest councils, region cards */
.ah-hero{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:30px;align-items:center}
.ah-map{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(5,58px);gap:6px}
.ah-map a{border-radius:10px;padding:7px 9px;display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);transition:transform .15s ease,box-shadow .15s ease}
.ah-map a b{font-family:var(--head);font-size:20px;line-height:1}.ah-map a span{font-size:11.5px;font-weight:700;line-height:1.1;opacity:.95}
.ah-map a:hover,.ah-map a:focus-visible{transform:scale(1.06);box-shadow:0 0 0 3px var(--gold);z-index:1}
.ah-busy{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(230px,100%),1fr));gap:10px}
.ah-busy a{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 14px;text-decoration:none;color:var(--ink);transition:transform .15s ease,border-color .15s ease}
.ah-busy a:hover{transform:translateY(-2px);border-color:var(--brand);color:var(--ink)}
.ah-rk{flex:0 0 28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:var(--brand-deep);font-family:var(--head);font-weight:800;font-size:14px}
.ah-busy li:nth-child(n+4) .ah-rk{background:var(--tint);color:var(--brand)}
.ah-nm{display:flex;flex-direction:column;font-weight:700;min-width:0;line-height:1.25}.ah-nm small{font-weight:400;color:var(--muted-2);font-size:12.5px}
.ah-c{margin-left:auto;font-family:var(--head);font-weight:800;font-size:22px;color:var(--brand)}
.ah-regions{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:16px;align-items:start}
.ah-reg{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px 16px;display:flex;flex-direction:column;gap:10px}
.ah-reg-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.ah-reg h3{margin:0;font-size:20px}.ah-reg h3 a{color:var(--ink);text-decoration:none}.ah-reg h3 a:hover{color:var(--brand);text-decoration:underline}
.ah-big{white-space:nowrap;color:var(--brand);font-weight:700;font-size:13px}.ah-big b{font-family:var(--head);font-size:26px;color:var(--brand-deep)}
.ah-reg.none .ah-big b{color:var(--muted-2)}
.ah-bar{height:8px;border-radius:999px;background:var(--line-2);overflow:hidden}.ah-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--brand),var(--gold))}
.ah-top{display:flex;flex-wrap:wrap;gap:6px}
.ah-top a{font-size:13px;font-weight:600;text-decoration:none;background:var(--tint);color:var(--brand-dark);border-radius:999px;padding:4px 10px}
.ah-top a b{color:var(--brand-deep)}.ah-top a:hover{background:var(--brand);color:#fff}.ah-top a:hover b{color:var(--gold-light)}
.ah-quiet{margin:0;font-size:14px;color:var(--muted-2)}
.ah-all summary{cursor:pointer;font-size:14px;font-weight:700;color:var(--brand)}.ah-all[open] summary{margin-bottom:8px}
.ah-go{margin-top:2px;align-self:flex-start;font-weight:700;font-size:14px;text-decoration:none}.ah-go:hover{text-decoration:underline}
@media (max-width:900px){.ah-hero{grid-template-columns:1fr}.ah-map{max-width:360px}}
@media (prefers-reduced-motion:reduce){.ah-map a,.ah-busy a{transition:none}}

/* Employers A-Z refresh (24 Oct 2026): logo wall, mini logos in the list, gold letter */
.az-wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;padding-top:6px}
.az-tile{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;padding:18px 14px 16px;background:#fff;border:1px solid var(--line);
  border-top:4px solid var(--gold);border-radius:14px;text-decoration:none;color:var(--ink);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.az-tile:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(48,26,44,.12);border-color:var(--brand);border-top-color:var(--gold);color:var(--ink)}
.az-tile:hover .nm{color:var(--brand)}
.az-logo{display:grid;place-items:center;width:112px;height:112px;margin-bottom:8px;border-radius:16px;background:#fff;box-shadow:0 0 0 1px var(--line-2),0 4px 14px rgba(48,26,44,.06)}
.az-logo .lg{width:96px;height:96px;object-fit:contain;border-radius:10px}.az-logo .mono{font-size:26px}
.az-tile .nm{font-family:var(--head);font-weight:700;font-size:16px;line-height:1.25}
.az-tile .sec{font-size:12.5px;color:var(--muted-2)}
.az-tile .jobs{margin-top:6px;font-size:12px;font-weight:700;background:#E3F3E8;color:#1E6B3A;border-radius:999px;padding:2px 10px}
.az-tile .more{margin-top:6px;font-size:12.5px;font-weight:700;color:var(--brand)}
.az-row{justify-content:flex-start;padding:9px 8px;margin:0 -8px;border-radius:8px}
.az-row:hover{background:var(--bg)}
.az-row .az-mini{width:40px;height:40px;flex:0 0 40px;border-radius:8px;object-fit:contain;background:#fff;box-shadow:0 0 0 1px var(--line-2)}
.az-row .mono.az-mini{font-size:13px}
.az-letter{display:flex;align-items:center;gap:12px;border-bottom:0;padding-bottom:0;margin:22px 0 10px}
.az-letter .az-big{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:var(--gold);color:var(--brand-deep);font-size:28px}
.az-letter small{font-family:var(--body);font-size:14px;font-weight:600;color:var(--muted-2)}
.letters a{transition:transform .1s ease}.letters a:hover{transform:translateY(-2px);border-color:var(--brand)}
.letters a.on{background:var(--gold);border-color:var(--gold);color:var(--brand-deep)}
@media (prefers-reduced-motion:reduce){.az-tile,.letters a{transition:none}.az-tile:hover{transform:none}}
.ah-busy li{display:flex}.ah-busy a{flex:1;min-width:0}   /* every box in a row the same height when a long name wraps */
.ah-rk,.ah-busy li:nth-child(n+4) .ah-rk{background:var(--tint);color:var(--brand)}   /* gold is kept for paid (Premium/Featured) things */

/* Advice & reports: "The planning jobs market today" charts (Frontend\Pj\MarketCharts, 24 Oct 2026) */
.mc{display:flex;flex-direction:column;gap:16px}
.mc-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}
.mc-tile{background:var(--brand);border-radius:14px;padding:16px 18px;color:var(--on-dark);display:flex;flex-direction:column;gap:2px;border-bottom:4px solid var(--gold)}
.mc-tile b{font-family:var(--head);font-size:34px;line-height:1.05;color:#fff}.mc-tile span{font-size:14px}
.mc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.mc-card{margin:0;padding:18px 20px 14px;display:flex;flex-direction:column;gap:10px;min-width:0}
.mc-wide{grid-column:1/-1}
.mc-card figcaption{display:flex;flex-direction:column;gap:2px}
.mc-t{font-family:var(--head);font-weight:700;font-size:19px;color:var(--ink)}.mc-s{font-size:13.5px;color:var(--muted-2)}
.mc-key{display:inline-block;width:10px;height:10px;border-radius:3px;vertical-align:-1px;margin:0 2px}
.mc-svg{width:100%;height:auto;display:block;overflow:visible}
.mc-svg text{font-family:var(--body)}
.mc-ax{font-size:11px;fill:var(--muted-2)}.mc-lab{font-size:12.5px;fill:var(--ink-2);font-weight:600}.mc-val{font-size:12px;fill:var(--ink);font-weight:700}
.mc-big{font-family:var(--head)!important;font-size:38px;font-weight:800;fill:var(--brand-deep)}
.mc-svg .mc-gl{stroke:#E6ECEE;stroke-width:1}.mc-base{stroke:#B9CBD2;stroke-width:1}
.mc-hit{cursor:default}.mc-hit path,.mc-hit rect[rx],.mc-hit circle{transition:opacity .12s}
.mc-svg:has(.mc-hit.on) .mc-hit:not(.on) path,.mc-svg:has(.mc-hit.on) .mc-hit:not(.on) circle{opacity:.45}
.mc-donut-wrap{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.mc-donut{width:200px;flex:0 0 200px}
.mc-legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;flex:1;min-width:170px}
.mc-legend li{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--ink-2)}.mc-legend b{margin-left:auto;font-family:var(--head);font-size:18px;color:var(--ink)}
.mc-legend .mc-key{width:12px;height:12px}
.mc-tbl summary{cursor:pointer;font-size:13px;font-weight:700;color:var(--brand)}.mc-tbl[open] summary{margin-bottom:8px}.mc-tbl .tbl{font-size:13.5px}
.mc-tip{position:fixed;z-index:50;pointer-events:none;background:var(--brand-deep);color:#fff;font-size:13px;font-weight:600;padding:7px 10px;border-radius:8px;box-shadow:0 6px 18px rgba(0,0,0,.2);max-width:280px}
@media (max-width:860px){.mc-grid{grid-template-columns:1fr}.mc-donut{width:170px;flex-basis:170px}}
@media (max-width:860px){
  .mc-tiles{grid-template-columns:1fr 1fr;gap:10px}.mc-tile{padding:12px 14px}.mc-tile b{font-size:26px}.mc-tile span{font-size:13px}
  .mc-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -6px;padding:0 6px}
  .mc-s-weeklySvg .mc-svg,.mc-s-paySvg .mc-svg{min-width:720px}.mc-s-regionSvg .mc-svg{min-width:420px}
}
.ah-regions{align-items:stretch}.ah-go{margin-top:auto}   /* region cards in a row the same height, links lined up */
.mc-report{margin:28px 0 8px}.mc-report h2{margin:0}.mc-report .mc-grid{grid-template-columns:1fr}
.mc-report .mc-tiles{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.mc-chg{display:block;font-style:normal;font-size:12.5px;font-weight:700;margin-top:2px}.mc-chg.up{color:#9EE6B5}.mc-chg.down{color:#FFB4A3}
.mc-legend .mc-chg{display:inline;font-size:12px}.mc-legend .mc-chg.up{color:#1E6B3A}.mc-legend .mc-chg.down{color:#B4442E}
.mc-report .mc-tiles{grid-template-columns:1fr 1fr}
@media (max-width:860px){.mc-report .mc-s-weeklySvg .mc-svg{min-width:420px}}
.mc-report .mc-tiles{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}

/* News & insights (24 Oct 2026): topic chips, report hero with its "who's hiring" ring, coloured section cards */
.nw-topics{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.nw-topics a{border:2px solid #C6D2C9;border-radius:999px;padding:6px 14px;font-weight:700;font-size:14px;color:var(--ink-2);background:#fff;text-decoration:none}
.nw-topics a .n{font-size:12px;color:var(--muted-2);margin-left:2px}.nw-topics a:hover{border-color:var(--brand)}
.nw-topics a.on{background:var(--brand);border-color:var(--brand);color:#fff}.nw-topics a.on .n{color:var(--on-dark)}
.nw-hero{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:24px;align-items:center;margin-bottom:18px;padding:28px 30px;border-radius:16px;text-decoration:none;
  background:linear-gradient(135deg,#081C2C 0%,#102A43 65%,#1B3D5C 100%);color:var(--on-dark);border-bottom:5px solid var(--gold);position:relative;overflow:hidden}
.nw-hero-txt{display:flex;flex-direction:column;gap:10px;min-width:0}
.nw-kick{align-self:flex-start;background:var(--gold);color:var(--brand-deep);font-weight:800;font-size:12px;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:4px 12px}
.nw-ht{font-family:var(--head);font-weight:800;font-size:30px;line-height:1.15;color:#fff}.nw-hd{line-height:1.6}
.nw-figs{display:flex;flex-wrap:wrap;gap:10px}.nw-figs span{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:8px 14px;font-size:13px;display:flex;flex-direction:column}
.nw-figs b{font-family:var(--head);font-size:22px;color:#fff;line-height:1.1}
.nw-btn{align-self:flex-start;margin-top:4px}
.nw-hero:hover .nw-ht{text-decoration:underline}.nw-hero:hover{color:var(--on-dark)}
.nw-ring{background:#fff;border-radius:50%;padding:12px;box-shadow:0 10px 30px rgba(0,0,0,.25)}.nw-ring .mc-svg{width:100%}
.news-card{position:relative;border-top:4px solid var(--ac,#102A43);transition:transform .15s ease,box-shadow .15s ease}
.news-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(48,26,44,.12)}
.nw-top{display:flex;align-items:center;gap:10px}
.nw-ic{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:var(--acb,#EDF7F4);color:var(--ac,#102A43);flex:0 0 38px}
.nw-sec{font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--ac,#102A43)}
.nw-top .nd{margin-left:auto}
:is(.news-card,.ess,.topic-tile).c-rep{--ac:#7A5A30;--acb:#F1E6D2}:is(.news-card,.ess,.topic-tile).c-car{--ac:#102A43;--acb:#EDF7F4}:is(.news-card,.ess,.topic-tile).c-pay{--ac:#1E6B3A;--acb:#DFF1E5}
:is(.news-card,.ess,.topic-tile).c-emp{--ac:#4B4A9C;--acb:#E6E6F7}:is(.news-card,.ess,.topic-tile).c-new{--ac:#B4442E;--acb:#FBE4DE}
.news-card.nw-lead{grid-column:1/-1;padding:24px 26px}.news-card.nw-lead .nt{font-size:24px}.news-card.nw-lead .nx{font-size:15.5px}
@media (max-width:700px){.nw-hero{grid-template-columns:1fr;padding:22px}.nw-ring{width:170px}.nw-ht{font-size:24px}}
@media (prefers-reduced-motion:reduce){.news-card{transition:none}.news-card:hover{transform:none}}
/* Booking form: emailed offer code applied (Outreach::readCode) */
.offer-on{display:flex;gap:14px;align-items:flex-start;background:#FAF5EA;border:2px solid var(--gold);border-radius:12px;padding:14px 16px;margin:0 0 16px}
.oo-star{flex:0 0 36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--gold);color:var(--brand-deep);font-size:18px}
.oo-t{margin:0;font-family:var(--head);font-weight:700;font-size:18px;color:var(--ink)}.oo-s{margin:2px 0 0;font-size:14px;color:var(--ink-2)}
.oo-was{font-family:var(--body);font-size:14px;font-weight:600;color:var(--muted-2)}
.oo-pill{align-self:flex-start;background:var(--gold);color:var(--brand-deep);font-size:12px;font-weight:800;border-radius:999px;padding:2px 10px;letter-spacing:.03em}
.sum.sum-off span,.sum.sum-off strong{color:#C0392B;font-weight:700}
.oo-pill{margin-top:4px;background:#FDECEA;color:#C0392B;border:1px solid #F5C2BC}

.badge.b-partner{background:#081C2C;color:#A8E6D6}   /* PUBLICSECTORFINANCEJOBS.COM Partner (Frontend\Pj\Partner) */

/* Advertise page: Partner plans (Frontend\Pj\Partner::TIERS, 24 Oct 2026) */
.pt-intro{padding:24px;display:flex;flex-direction:column;gap:8px}.pt-intro .h3{margin:0}.pt-intro .btn-gold{align-self:flex-start;margin-top:6px}
.pt-from{margin:4px 0 0;font-size:15px;color:var(--muted)}.pt-from strong{font-family:var(--head);font-size:30px;color:var(--brand-deep)}
.pt-band{background:linear-gradient(135deg,#081C2C 0%,#102A43 70%,#1B3D5C 100%);border-radius:18px;padding:34px 30px 26px;color:var(--on-dark);border-bottom:5px solid var(--gold)}
.pt-head{max-width:760px}.pt-head .eb{margin:0 0 4px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}
.pt-head h2{margin:0 0 8px;color:#fff;font-size:32px}.pt-head p{margin:0;line-height:1.6}
.pt-tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px}
.pt-tier{position:relative;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.2);border-radius:14px;padding:22px 20px;display:flex;flex-direction:column;gap:6px}
.pt-tier.pt-pop{background:#fff;color:var(--ink);border:3px solid var(--gold)}
.pt-n{margin:0;font-family:var(--head);font-weight:700;font-size:20px;color:inherit}.pt-tier:not(.pt-pop) .pt-n{color:#fff}
.pt-p{margin:4px 0 0;font-family:var(--head);font-weight:800;font-size:38px;line-height:1.05;color:#fff}.pt-pop .pt-p{color:var(--brand-deep)}
.pt-p span{font-size:15px;font-weight:600;opacity:.8}.pt-m{margin:0 0 6px;font-size:13.5px;opacity:.85}
.pt-tier .inc{margin:6px 0 14px}.pt-tier:not(.pt-pop) .inc{color:#E5ECE6}.pt-tier .inc svg{color:var(--gold)}
.pt-tier .btn-gold,.pt-tier .btn-line{margin-top:auto;text-align:center}
.pt-tier .pt-line{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}.pt-line:hover{background:rgba(255,255,255,.1);color:#fff}
.pt-foot{margin:18px 0 0;font-size:13px;opacity:.85}
@media (max-width:900px){.pt-tiers{grid-template-columns:minmax(0,1fr);row-gap:34px}.pt-head h2{font-size:26px}}   /* stacked: room for the gold "Best fit" pill that sits on the box edge */
@media (max-width:420px){.pt-band{padding-left:18px!important;padding-right:18px!important}.pt-tier{padding:18px 16px}}

/* Very small phones (Galaxy Fold folded, 280-340px): buttons may wrap rather than push the page sideways */
@media (max-width:360px){
  .btn-gold,.btn-line{white-space:normal;text-align:center;line-height:1.25;padding-left:14px;padding-right:14px}
  .sticky-apply{gap:8px;padding-left:12px;padding-right:12px}.sticky-apply .btn-gold{min-width:0;padding:0 16px}
  .card{padding-left:14px;padding-right:14px}
}

/* "Show the figures" tables on the market charts: scroll inside the card on phones instead of spilling out */
.mc-tbl{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
@media (max-width:480px){.mc-tbl .tbl{font-size:13px}.mc-tbl .tbl th,.mc-tbl .tbl td{padding-left:6px;padding-right:6px}}

/* Phones: the back-to-top button is a small round arrow, so it does not cover form fields and text */
@media (max-width:640px){.to-top{width:44px;height:44px;padding:0;justify-content:center;font-size:0;gap:0;opacity:.92}.to-top svg{width:20px;height:20px}}

/* Galaxy Fold folded and other very narrow phones: smaller logo so the menu button stays on the same line */
@media (max-width:340px){.brand{gap:6px}.brand span{font-size:15.5px}.brand img{height:17px}.foot .brand span{font-size:15.5px}.top .bar{gap:8px}}

/* Salary guide box in articles (Advice::guideHtml) */
.sal-guide{margin:18px 0 22px;padding:18px 20px;border-top:4px solid var(--gold)}
.sal-guide figcaption{font-size:14px;color:var(--muted);margin-bottom:10px}
.sal-guide table{width:100%;border-collapse:collapse;font-size:15px;margin:0}
.sal-guide th{text-align:left;font-size:12.5px;color:var(--muted);font-weight:700;padding:6px 8px;border-bottom:2px solid var(--line)}
.sal-guide td{padding:8px;border-bottom:1px solid var(--line-2)}.sal-guide td+td{font-weight:700;color:var(--brand-deep);white-space:nowrap}
.sal-guide .sg-note{margin:10px 0 0;font-size:13px;color:var(--muted-2)}
@media (max-width:480px){.sal-guide{padding:14px 12px}.sal-guide table{font-size:13.5px}.sal-guide th,.sal-guide td{padding:6px 4px}}
.sal-guide .sg-s{display:none}
@media (max-width:560px){.sal-guide .sg-l{display:none}.sal-guide .sg-s{display:inline}.sal-guide th{font-size:11px;letter-spacing:0}.sal-guide td{font-size:13px}.sal-guide td+td{white-space:normal}.sal-guide td:first-child{min-width:0;hyphens:auto}}
@media (max-width:360px){.sal-guide{padding:12px 8px}.sal-guide td{font-size:12px;padding:6px 2px}}
.sal-guide table{display:table;table-layout:fixed;width:100%;overflow:visible}
.sal-guide th:first-child,.sal-guide td:first-child{width:30%}
@media (max-width:560px){.sal-guide th:first-child,.sal-guide td:first-child{width:36%}}
@media (max-width:560px){.sal-guide th{text-transform:none;font-size:12px;overflow-wrap:normal;word-break:normal;hyphens:manual}}
@media (max-width:360px){.sal-guide th:first-child,.sal-guide td:first-child{width:31%}.sal-guide th{font-size:11px}}
/* sidebar only sticks when it sits beside the text (it wraps above it below ~1000px: Fold unfolded overlap, 25 Oct 2026) */
@media (max-width:1000px){.info-side{position:static}}
.tier-tools .sort{gap:10px;flex-wrap:wrap}.tier-tools .sort .field{max-width:100%}.tier-tools .sort select{max-width:100%}
/* Top Job / Job of the Week inside job lists once the sidebar drops below them (Site::spotInline, 25 Oct 2026) */
.spot-inline{display:none}
@media (max-width:1015px){.spot-inline{display:flex;flex-direction:column;gap:14px;margin:6px 0}.spot-side{display:none}}
.spot-side{display:flex;flex-direction:column;gap:18px}
@media (max-width:1015px){.spot-side{display:none}}
/* job page: send it to a planner (25 Oct 2026) */
.send-on{margin-top:14px;padding-top:14px;border-top:1px solid var(--line-2)}
.send-on .t{margin:0 0 10px;font-weight:700;font-size:15px;color:var(--ink)}
.send-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.send-grid a,.send-grid button{display:flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:0 10px;border:1px solid #C6D2C9;border-radius:8px;background:#fff;color:var(--brand);font:inherit;font-size:14px;font-weight:700;text-decoration:none;cursor:pointer;white-space:nowrap}
.send-grid a:hover,.send-grid button:hover{border-color:var(--brand);background:#F4F6F2}
@media (max-width:340px){.send-grid{grid-template-columns:1fr}}
/* /job-alerts: what you get with the Weekly */
.wk-gets{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:14px}
.wk-gets li{display:flex;gap:12px;align-items:flex-start}.wk-gets svg{flex:0 0 auto;margin-top:3px}
.wk-gets strong{display:block;font-size:16px;color:var(--ink)}.wk-gets strong a{color:var(--brand)}
.wk-gets span{display:block;color:var(--ink-2);font-size:15px;line-height:1.55}
/* Advice hub: salary guide strip */
.sal-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 26px;border-top:4px solid var(--gold);flex-wrap:wrap}
.sal-strip h2{font-family:var(--head);font-size:22px;margin:2px 0 4px}.sal-strip p{margin:0;color:var(--ink-2)}.sal-strip>div{flex:1 1 380px;min-width:0}
/* salary guide: anonymous pay form */
.sal-share{padding:22px 24px;margin:16px 0;border-top:4px solid var(--brand)}
.sal-share .ss-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:12px 16px;margin:12px 0}
.sal-share .fld label{display:block;font-weight:700;font-size:14px;margin-bottom:4px}
.sal-share select,.sal-share input[type=email],.sal-share input[inputmode]{width:100%;min-height:44px;border:1px solid #C6D2C9;border-radius:8px;padding:0 10px;font:inherit;background:#fff;box-sizing:border-box}
.sal-share .ss-more{margin:4px 0 14px}.sal-share .ss-more summary{cursor:pointer;font-weight:700;color:var(--brand)}
.sal-share .ss-tick{display:flex;gap:8px;align-items:flex-start;font-size:14px;margin-top:10px;line-height:1.5}
/* advertising offers sign-up (Offers::formHtml) */
.offers-box{padding:24px 26px;border-top:4px solid var(--gold);max-width:900px}
.offers-box h3{font-family:var(--head);font-size:22px;margin:2px 0 6px}.offers-box>p{margin:0 0 12px;color:var(--ink-2)}
.offers-box .of-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:12px 16px;margin:4px 0 14px}
.offers-box .of-wide{grid-column:1/-1}
.offers-box label{display:block;font-weight:700;font-size:14px;margin-bottom:4px}
.offers-box input:not(.hp){width:100%;min-height:44px;border:1px solid #C6D2C9;border-radius:8px;padding:0 12px;font:inherit;box-sizing:border-box}
.offers-box .offers-msg{background:#E8F5EC;color:#1C5B32;border-radius:8px;padding:10px 12px;font-weight:700}
.ap-hirer{display:flex;gap:8px;align-items:flex-start;font-size:14px;line-height:1.5;margin:4px 0 14px;color:var(--ink-2)}.ap-hirer input{margin-top:3px}
.offers-box .of-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:560px){.offers-box .of-grid{grid-template-columns:1fr}}
/* home page logo strip: fewer, bigger logos (Matt, 25 Oct 2026) */
.track .logo-tile{width:188px;min-height:128px;padding:6px}
.track .logo-tile img{height:112px}
@media (max-width:640px){.track .logo-tile{width:132px;min-height:96px;padding:8px}.track .logo-tile img{height:78px}}
/* logo tiles site-wide at the home-strip size (Matt, 25 Oct 2026): bigger logos, less white space */
.logo-tile{padding:6px;min-height:112px}
.logo-tile img{height:96px}
.logo-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.sell-track .logo-tile{width:188px;min-height:128px;padding:6px}.sell-track .logo-tile img{height:112px;max-height:none}
@media (max-width:640px){.logo-tile{min-height:96px}.logo-tile img{height:80px}.logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sell-track .logo-tile{width:132px;min-height:96px}.sell-track .logo-tile img{height:78px}}
.logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:640px){.logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* employer name under each logo tile (Matt, 25 Oct 2026: "who's the red horse?") */
.logo-tile{flex-direction:column;gap:4px}
.logo-tile .lt-name{display:block;max-width:100%;font-size:12.5px;font-weight:700;line-height:1.25;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.logo-tile:hover .lt-name{color:var(--brand)}
.logo-tile img{height:80px}
.track .logo-tile img,.sell-track .logo-tile img{height:92px}
@media (max-width:640px){.logo-tile img{height:66px}.track .logo-tile img,.sell-track .logo-tile img{height:62px}.logo-tile .lt-name{font-size:11.5px}}
@media (max-width:640px){.logo-tile .lt-name{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;text-align:center;font-size:11px}}
.art-body .info-note,.info-note{background:#F4F6F2;border-left:0;border-radius:10px;padding:12px 16px;font-size:15px}
.offers-box{max-width:none}@media (min-width:900px){.offers-box .of-grid{grid-template-columns:1fr 1fr 1.4fr}.offers-box .of-wide{grid-column:auto}}

/* Advertise page: slim offers sign-up under the prices (25 Oct 2026) */
.offers-strip{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;max-width:900px;margin:18px auto 0;padding:12px 14px 12px 18px;background:#F8F1E3;border:1px solid #EBD27A;border-left:4px solid var(--gold);border-radius:10px}
.offers-strip .os-text{flex:1 1 300px;color:var(--ink-2);line-height:1.4}.offers-strip .os-text strong{color:var(--ink)}
.offers-strip input[type=email]{flex:1 1 220px;min-height:44px;border:1px solid #C6D2C9;border-radius:8px;padding:0 12px;font:inherit;box-sizing:border-box;background:#fff}
.offers-strip .btn-gold{min-height:44px;white-space:nowrap}
.offers-strip .offers-msg{flex-basis:100%;margin:0;background:#E8F5EC;color:#1C5B32;border-radius:8px;padding:8px 12px;font-weight:700}
@media (max-width:560px){.offers-strip .btn-gold{flex:1 1 100%}}

/* "Post a job today" price rows go straight to the booking form with that advert picked (25 Oct 2026) */
a.price{color:inherit;text-decoration:none;transition:background .15s,transform .15s}
a.price:hover,a.price:focus-visible{background:rgba(255,255,255,.18);transform:translateX(2px)}
a.price.best:hover,a.price.best:focus-visible{background:#F8F1E3}

/* home market report banner: the title links to the report too */
.mr-title{color:inherit;text-decoration:none}.mr-title:hover,.mr-title:focus-visible{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:6px;text-decoration-thickness:3px}
.pt-foot a{color:inherit;font-weight:700;text-decoration:underline}
/* job page logo: same gold ring on hover as the job cards' logos (a.logo-link) */
.job-logo{border-radius:12px;transition:box-shadow .15s}.job-logo:hover,.job-logo:focus-visible{box-shadow:0 0 0 3px var(--gold)}
.report .mr-title,.report .mr-title:hover,.report .mr-title:focus-visible{color:#fff}   /* the global a:hover went dark teal on the dark banner */
/* Advertise page (25 Oct 2026, Matt): Standard and Featured sit lower so Premium stands up above them (desktop only; phones stack with Premium first) */
@media (min-width:981px){.sell-plans .plan:not(.plan-pop){margin-top:56px}}

/* plan cards: the label the advert will carry, beside the plan name */
.plan-h{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.plan-h .badge{font-family:var(--body,inherit);font-size:11px}

/* phones: a small gold Advertise button beside the menu (25 Oct 2026), so employers don't have to open the menu */
.bar-sell{display:none}
@media (max-width:900px){.bar-sell{display:inline-flex;align-items:center;margin-left:auto;margin-right:6px;background:var(--gold);color:var(--brand-deep);font-weight:700;font-size:14px;text-decoration:none;border-radius:8px;padding:0 12px;min-height:38px}
  .bar-sell:hover{background:var(--gold-dark);color:var(--brand-deep)}}
@media (max-width:900px){.top .bar{gap:8px}.top .bar .menu-btn{width:40px;margin-right:-6px}.top .bar .bar-sell{margin-right:0}}
@media (max-width:400px){.bar-sell{padding:0 9px;font-size:13px;min-height:34px}.top .brand{gap:7px}.top .brand span{font-size:16px}.top .brand img{width:30px;height:auto}}
@media (max-width:340px){.bar-sell{padding:0 7px;font-size:12px}.top .brand span{font-size:14px}.top .brand img{width:24px}.top .bar .menu-btn{width:34px}}

/* search: more matching jobs on employers' own pages (26 Oct 2026) */
.more-emp{padding:16px 20px;margin-top:14px}.more-emp .t{margin:0;font-weight:600;line-height:1.6}.more-emp a{font-weight:700}
.emp-more{font-weight:600;white-space:nowrap}
.emp-disc{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}.emp-disc a{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1.5px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);text-decoration:none;font-weight:600;font-size:14px}.emp-disc a.on{background:var(--brand);border-color:var(--brand);color:#fff}.emp-disc .n{font-size:12px;opacity:.75}
@media (max-width:640px){.emp-disc{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.emp-disc a{flex:0 0 auto}}

/* /advertise#offers lands on the strip under the prices; keep it clear of the sticky header (26 Oct 2026) */
.offers-strip,.offers-box{scroll-margin-top:110px}
/* Job title pages: area + sort (26 Oct 2026) */
.role-refine{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin:0 0 14px;padding:10px 14px;background:#fff;border:1px solid var(--line);border-radius:10px}
.role-refine label{display:flex;align-items:center;gap:8px;font-weight:700;font-size:14px;margin:0}
.role-refine select{min-height:40px;border:1px solid #C9D6DB;border-radius:8px;padding:0 10px;font:inherit;font-weight:400;background:#fff;max-width:240px}
.role-refine .rr-n{color:var(--ink-2);font-size:14px}
@media (max-width:560px){.role-refine label{width:100%;justify-content:space-between}.role-refine select{flex:1;max-width:none}}
#role-list .loc-job[hidden]{display:none}

/* sister site link (28 Oct 2026): small logo tile in the footer + a band on the Advertise page */
.foot .foot-sister{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:16px;color:var(--on-dark-2);font-size:12.5px;line-height:1.35;text-decoration:none}
.fs-tile{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:7px;border:1px solid rgba(255,255,255,.18)}
.fs-tile img{height:13px;width:auto}
.fs-tile b{font-family:var(--head);font-weight:600;font-size:13px;color:#fff;letter-spacing:.2px}.fs-tile i{font-style:normal}
.foot .foot-sister:hover .fs-tile{border-color:rgba(255,255,255,.45)}.foot .foot-sister small{font-size:12.5px}
.sister-band a{display:flex;align-items:center;flex-wrap:wrap;gap:12px 16px;padding:16px 20px;border:1px solid var(--line,#DDE6EA);border-radius:12px;background:var(--surface,#F4F7F8);color:inherit;text-decoration:none}
.sister-band a:hover{border-color:var(--brand,#03526D)}.sister-band .fs-tile{border:0}.sister-band span.txt{flex:1 1 260px;font-size:15.5px;line-height:1.5}

/* Home: slim "From Advice & reports" strip under Latest Jobs (28 Oct 2026) */
.home-reads{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;margin-top:22px;padding:12px 16px;border:1px solid var(--line,#dfe6ea);border-radius:12px;background:#fff;font-size:14px}
.home-reads .hr-lab{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.home-reads a{color:var(--brand-deep);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.home-reads .hr-all{margin-left:auto;text-decoration:none;font-weight:700}
@media (max-width:640px){.home-reads{flex-direction:column;align-items:flex-start}.home-reads .hr-all{margin-left:0}}

/* Advice & reports hub (28 Oct 2026): report hero as on All articles, earlier-reports line, "who's hiring" as a stacked bar */
.hub-earlier{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;margin:12px 2px 0;font-size:14px;color:var(--muted)}
.hub-earlier a{font-weight:600}.hub-earlier .hr-all{margin-left:auto;font-weight:700;text-decoration:none}
.mc-stack{display:flex;gap:3px;height:34px;border-radius:10px;overflow:hidden;margin:8px 0 4px}.mc-stack span{min-width:6px;cursor:pointer}
.mc-stack span.on,.mc-stack span:hover{filter:brightness(1.12)}
.mc-stack-key{list-style:none;margin:6px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}
.mc-stack-key li{display:flex;flex-direction:column;gap:2px}.mc-stack-key b{font-family:var(--head);font-size:28px;line-height:1}
.mc-stack-key span{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--ink-2)}.mc-stack-key em{font-style:normal;font-size:13px;color:var(--muted-2)}
.hub-earlier{margin:8px 2px -20px}.news-card .nd{white-space:nowrap}
.mc-tbl-open{margin-top:14px}.mc-tbl-open .tbl{width:100%}
.hub-latest{grid-template-columns:1fr 1fr}@media (max-width:700px){.hub-latest{grid-template-columns:1fr}}
.hub-latest{grid-template-columns:repeat(3,1fr)}@media (max-width:900px){.hub-latest{grid-template-columns:1fr}}

/* The Weekly strip under the home-page search (30 Oct 2026) */
.wk-strip{margin-top:26px;background:var(--brand-dark);border:1px solid var(--gold-light);border-radius:12px;padding:16px 18px 16px 20px;display:flex;align-items:center;gap:18px;box-sizing:border-box}
.wk-strip .wk-ic{flex-shrink:0;stroke:var(--gold-light)}
.wk-strip .wk-txt{flex:1;min-width:0}
.wk-strip p{margin:0}
.wk-strip .wk-h{font-family:var(--head);font-weight:700;font-size:18px;color:#fff}
.wk-strip .wk-eb{font-family:var(--body);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-light);margin-left:6px;white-space:nowrap}
.wk-strip .wk-s{font-size:14px;color:var(--on-dark);margin-top:3px;line-height:1.45}
.wk-strip .wk-prev{color:var(--gold-light);font-weight:700;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.wk-strip .wk-prev:hover{color:#fff}
.wk-strip .wk-row{display:flex;gap:8px;flex-shrink:0}
.wk-strip input{width:250px;height:46px;border:0;border-radius:8px;padding:0 14px;font:inherit;font-size:15px;box-sizing:border-box;color:var(--ink);background:#fff}
.wk-strip .btn-gold{min-height:46px;white-space:nowrap}
.alerts .wk-side{margin:6px 0 10px;font-size:14px;color:var(--muted);line-height:1.5}
@media (max-width:900px){.wk-strip{flex-wrap:wrap}.wk-strip .wk-txt{flex:1 1 0}.wk-strip .wk-row{flex:1 1 100%;min-width:0}.wk-strip input{flex:1 1 0;width:auto;min-width:0}}
@media (max-width:640px){.wk-strip .wk-row{flex-direction:column}.wk-strip input{flex:0 0 46px;width:100%}.wk-strip .btn-gold{width:100%}.wk-strip{margin-top:16px;padding:16px;gap:12px;align-items:flex-start}.wk-strip .wk-ic{width:28px;height:28px}.wk-strip .wk-eb{display:block;margin:0 0 2px}.wk-strip .wk-h{display:flex;flex-direction:column-reverse;font-size:17px}}

/* Change your Weekly (30 Oct 2026) */
.ap-change{margin-top:10px}
@media (max-width:640px){.ap-change .ap-grid{grid-template-columns:1fr}.ap-change .btn-gold{width:100%}}

/* Seasons & events (30 Oct 2026, Frontend\Pj\Events) */
.ev-preview-bar{background:#4B4A9C;color:#fff;font-size:14px;text-align:center;padding:7px 12px}
.ev-preview-bar a{color:#fff;text-decoration:underline}
@media (max-width:900px){.util .ev-sell{display:inline!important}}
.ev-ribbon{display:inline-block;margin:6px 8px 0 0;border-radius:6px;padding:5px 12px;font-family:var(--head);font-weight:700;font-size:14px;letter-spacing:.03em;background:var(--gold);color:var(--brand-deep)}
.ev-line{margin:10px 0 0;color:#fff;font-weight:700;font-size:16px}
.ev-pill{display:inline-block;margin-bottom:12px;border-radius:999px;padding:5px 14px;font-size:14px;font-weight:700;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.35);color:#fff}
/* Event spots: code box, Partner line, 'Post a job' box line (hidden bits shown by a look) */
.ev-code{display:flex;align-items:stretch;max-width:560px;margin:18px 0 0;background:#FFFBEA;color:var(--ink);border-radius:10px;overflow:hidden;text-align:left}
.ev-code-ic{flex:0 0 60px;display:flex;align-items:center;justify-content:center;background:var(--brand)}
.ev-code-t{display:flex;flex-direction:column;gap:3px;padding:12px 16px;font-size:14px;color:#47575E}
.ev-code-k{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#8A6F0F}
.ev-code-t strong{font-family:var(--head);font-size:21px;line-height:1.2;color:var(--brand)}
.ev-partner{display:inline-block;margin:4px 0 16px!important;padding:8px 14px;border:1px solid rgba(242,212,92,.6);border-radius:8px;background:rgba(242,212,92,.12);color:#fff!important;font-weight:700}
.recruit .ev-sell-line{margin:12px 0 0;padding:8px 12px;border-radius:8px;background:rgba(255,255,255,.12);color:#fff;font-weight:700;font-size:14px}
.ev-wrap,.ev-tree,.ev-bell,.ev-mark,.ev-web,.ev-patch{display:none}
.pt-was{margin:6px 0 0;font-size:16px;font-weight:700;opacity:.9}.pt-was s{opacity:.75}
.pt-off{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:999px;background:var(--gold);color:var(--brand-deep);font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.ev-blackfriday .pt-off{background:#0E0E0E;color:#F2C94C;border:1px solid #F2C94C}
.ev-band{display:block;margin:14px -26px 0;padding:9px 20px;background:var(--brand-deep);color:#fff;font-size:13px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;text-align:center;line-height:1.35}
.ev-band-s{margin:6px -16px 4px;padding:6px 12px;font-size:11.5px}
@media (max-width:640px){.plan .ev-band{margin-left:-22px;margin-right:-22px}}
.ev-blackfriday .ev-band{background:#0E0E0E;color:#F2C94C;box-shadow:inset 0 1px 0 #F2C94C,inset 0 -1px 0 #F2C94C}
.ev-christmas .ev-band{background:#B3262E;color:#fff}
.ev-christmas .plan-premium .ev-band{margin-right:-56px}
.ev-newyear .ev-band{background:#022F3F;color:#F2D45C;box-shadow:inset 0 1px 0 #F2D45C,inset 0 -1px 0 #F2D45C}
.sell-hero .ev-code{margin-left:auto;margin-right:auto}
.ev-tree{position:absolute;top:-14px;left:24px;background:var(--gold);color:var(--brand-deep);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:5px 12px;border-radius:999px;z-index:2}
/* Christmas (30 Oct 2026, Matt's canvas): drooping string lights under the header, snowflakes on the page tops,
   wrapped Premium card ('Top of the tree'), a bell on the Top Job, a small bow on the Advertise buttons, bells on Partner */
.ev-christmas header.top{position:relative}
.ev-christmas header.top::after{content:"";position:absolute;left:0;right:0;bottom:-30px;height:42px;pointer-events:none;z-index:6;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='320' height='42' viewBox='0 0 320 42'%3E%3Cpath d='M0 6 Q160 62 320 6' fill='none' stroke='%230E2B36' stroke-width='2'/%3E%3Crect x='37' y='11' width='6' height='5' rx='1' fill='%230E2B36'/%3E%3Cellipse cx='40' cy='23' rx='5' ry='8' fill='%23C8323B'/%3E%3Cellipse cx='38.4' cy='20' rx='1.4' ry='2.6' fill='%23fff' opacity='.45'/%3E%3Crect x='117' y='18' width='6' height='5' rx='1' fill='%230E2B36'/%3E%3Cellipse cx='120' cy='30' rx='5' ry='8' fill='%23F2C94C'/%3E%3Cellipse cx='118.4' cy='27' rx='1.4' ry='2.6' fill='%23fff' opacity='.45'/%3E%3Crect x='197' y='18' width='6' height='5' rx='1' fill='%230E2B36'/%3E%3Cellipse cx='200' cy='30' rx='5' ry='8' fill='%233FA66A'/%3E%3Cellipse cx='198.4' cy='27' rx='1.4' ry='2.6' fill='%23fff' opacity='.45'/%3E%3Crect x='277' y='11' width='6' height='5' rx='1' fill='%230E2B36'/%3E%3Cellipse cx='280' cy='23' rx='5' ry='8' fill='%23F2C94C'/%3E%3Cellipse cx='278.4' cy='20' rx='1.4' ry='2.6' fill='%23fff' opacity='.45'/%3E%3C/svg%3E") 0 0/320px 42px repeat-x}
.ev-christmas div.top{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='360' height='240' viewBox='0 0 360 240'%3E%3Cg fill='none' stroke='%23fff' stroke-width='1.5' stroke-linecap='round'%3E%3Cg transform='translate(40 50)' opacity='0.3'%3E%3Cpath d='M0-12V12M-10.4-6.0 10.4 6.0M-10.4 6.0 10.4-6.0M-3.6-9.4 0-6.0 3.6-9.4M-3.6 9.4 0 6.0 3.6 9.4'/%3E%3C/g%3E%3Cg transform='translate(210 30)' opacity='0.28'%3E%3Cpath d='M0-7V7M-6.1-3.5 6.1 3.5M-6.1 3.5 6.1-3.5M-2.1-5.5 0-3.5 2.1-5.5M-2.1 5.5 0 3.5 2.1 5.5'/%3E%3C/g%3E%3Cg transform='translate(300 130)' opacity='0.22'%3E%3Cpath d='M0-14V14M-12.2-7.0 12.2 7.0M-12.2 7.0 12.2-7.0M-4.2-10.9 0-7.0 4.2-10.9M-4.2 10.9 0 7.0 4.2 10.9'/%3E%3C/g%3E%3Cg transform='translate(120 170)' opacity='0.26'%3E%3Cpath d='M0-9V9M-7.8-4.5 7.8 4.5M-7.8 4.5 7.8-4.5M-2.7-7.0 0-4.5 2.7-7.0M-2.7 7.0 0 4.5 2.7 7.0'/%3E%3C/g%3E%3Cg transform='translate(250 215)' opacity='0.25'%3E%3Cpath d='M0-6V6M-5.2-3.0 5.2 3.0M-5.2 3.0 5.2-3.0M-1.8-4.7 0-3.0 1.8-4.7M-1.8 4.7 0 3.0 1.8 4.7'/%3E%3C/g%3E%3C/g%3E%3Cg fill='%23fff'%3E%3Ccircle cx='90' cy='95' r='2' opacity='.35'/%3E%3Ccircle cx='170' cy='80' r='1.5' opacity='.3'/%3E%3Ccircle cx='330' cy='40' r='2' opacity='.3'/%3E%3Ccircle cx='20' cy='200' r='1.6' opacity='.3'/%3E%3Ccircle cx='200' cy='140' r='1.3' opacity='.3'/%3E%3C/g%3E%3C/svg%3E");background-size:360px 240px}
.ev-christmas .ev-ribbon{background:#B4232C;color:#fff}
.ev-christmas .ev-pill{background:#B4232C;border-color:#B4232C}
.ev-christmas .plan-premium{padding-right:56px;overflow:visible}
.ev-christmas .plan-premium .ev-wrap{display:block;position:absolute;top:0;bottom:0;right:22px;width:14px;background:#B3262E;opacity:.9}
.ev-christmas .plan-premium .ev-wrap::after{content:"";position:absolute;top:-30px;left:50%;margin-left:-43px;width:86px;height:52px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='86' height='52' viewBox='0 0 86 52'%3E%3Cpath d='M43 30C30 10 6 6 8 22S36 30 43 30Z' fill='%23B3262E'/%3E%3Cpath d='M43 30C56 10 80 6 78 22S50 30 43 30Z' fill='%23B3262E'/%3E%3Cpath d='M43 30 32 50M43 30 54 50' stroke='%23B3262E' stroke-width='6' stroke-linecap='round'/%3E%3Ccircle cx='43' cy='29' r='7' fill='%238E1C24'/%3E%3C/svg%3E") no-repeat}
.ev-christmas .plan-premium .pop-tag{display:none}
.ev-christmas .plan-premium .ev-tree{display:inline-block}
.ev-christmas .ev-bell,.ev-christmas .ev-mark{display:inline-block;width:24px;height:26px;margin-left:10px;vertical-align:-2px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='26' viewBox='0 0 24 26'%3E%3Cpath d='M12 3a1.3 1.3 0 0 1 1.3 1.3v.7A6.5 6.5 0 0 1 18.5 11.4V16l2.3 3.2H3.2L5.5 16v-4.6A6.5 6.5 0 0 1 10.7 5v-.7A1.3 1.3 0 0 1 12 3z' fill='%23D8AD02' stroke='%238A6D00' stroke-width='.8'/%3E%3Ccircle cx='12' cy='21.6' r='2.3' fill='%238A6D00'/%3E%3Cpath d='M6 16.2h12' stroke='%23B3262E' stroke-width='1.6'/%3E%3Cpath d='M12 3 9 0.6M12 3l3-2.4' stroke='%23B3262E' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat;transform-origin:50% 2px;animation:ev-jingle 1.6s ease-in-out .6s 3}
.ev-christmas .topjob,.ev-christmas .topjob-side{border-color:#D8AD02;box-shadow:0 0 0 3px rgba(179,38,46,.12)}
.ev-christmas .topjob .b-top,.ev-christmas .topjob-side .b-top{background:#B3262E}
.ev-christmas .topjob .b-top::after,.ev-christmas .topjob-side .b-top::after{content:"";display:inline-block;width:12px;height:13px;margin-left:6px;vertical-align:-2px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='26' viewBox='0 0 24 26'%3E%3Cpath d='M12 3a1.3 1.3 0 0 1 1.3 1.3v.7A6.5 6.5 0 0 1 18.5 11.4V16l2.3 3.2H3.2L5.5 16v-4.6A6.5 6.5 0 0 1 10.7 5v-.7A1.3 1.3 0 0 1 12 3z' fill='%23D8AD02' stroke='%238A6D00' stroke-width='.8'/%3E%3Ccircle cx='12' cy='21.6' r='2.3' fill='%238A6D00'/%3E%3Cpath d='M6 16.2h12' stroke='%23B3262E' stroke-width='1.6'/%3E%3Cpath d='M12 3 9 0.6M12 3l3-2.4' stroke='%23B3262E' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") 0 0/12px 13px no-repeat}
@keyframes ev-jingle{0%,100%{transform:rotate(0)}15%{transform:rotate(16deg)}30%{transform:rotate(-13deg)}45%{transform:rotate(9deg)}60%{transform:rotate(-6deg)}75%{transform:rotate(3deg)}}
.ev-christmas .ev-btn{position:relative;overflow:visible}
.ev-christmas .ev-btn::after{content:"";position:absolute;top:-8px;right:10px;width:30px;height:18px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='18' viewBox='0 0 86 52'%3E%3Cpath d='M43 30C30 10 6 6 8 22S36 30 43 30Z' fill='%23B3262E'/%3E%3Cpath d='M43 30C56 10 80 6 78 22S50 30 43 30Z' fill='%23B3262E'/%3E%3Ccircle cx='43' cy='29' r='8' fill='%238E1C24'/%3E%3C/svg%3E") no-repeat;pointer-events:none}
.ev-christmas .recruit{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='360' height='240' viewBox='0 0 360 240'%3E%3Cg fill='none' stroke='%23fff' stroke-width='1.5' stroke-linecap='round'%3E%3Cg transform='translate(40 50)' opacity='0.3'%3E%3Cpath d='M0-12V12M-10.4-6.0 10.4 6.0M-10.4 6.0 10.4-6.0M-3.6-9.4 0-6.0 3.6-9.4M-3.6 9.4 0 6.0 3.6 9.4'/%3E%3C/g%3E%3Cg transform='translate(210 30)' opacity='0.28'%3E%3Cpath d='M0-7V7M-6.1-3.5 6.1 3.5M-6.1 3.5 6.1-3.5M-2.1-5.5 0-3.5 2.1-5.5M-2.1 5.5 0 3.5 2.1 5.5'/%3E%3C/g%3E%3Cg transform='translate(300 130)' opacity='0.22'%3E%3Cpath d='M0-14V14M-12.2-7.0 12.2 7.0M-12.2 7.0 12.2-7.0M-4.2-10.9 0-7.0 4.2-10.9M-4.2 10.9 0 7.0 4.2 10.9'/%3E%3C/g%3E%3Cg transform='translate(120 170)' opacity='0.26'%3E%3Cpath d='M0-9V9M-7.8-4.5 7.8 4.5M-7.8 4.5 7.8-4.5M-2.7-7.0 0-4.5 2.7-7.0M-2.7 7.0 0 4.5 2.7 7.0'/%3E%3C/g%3E%3Cg transform='translate(250 215)' opacity='0.25'%3E%3Cpath d='M0-6V6M-5.2-3.0 5.2 3.0M-5.2 3.0 5.2-3.0M-1.8-4.7 0-3.0 1.8-4.7M-1.8 4.7 0 3.0 1.8 4.7'/%3E%3C/g%3E%3C/g%3E%3Cg fill='%23fff'%3E%3Ccircle cx='90' cy='95' r='2' opacity='.35'/%3E%3Ccircle cx='170' cy='80' r='1.5' opacity='.3'/%3E%3Ccircle cx='330' cy='40' r='2' opacity='.3'/%3E%3Ccircle cx='20' cy='200' r='1.6' opacity='.3'/%3E%3Ccircle cx='200' cy='140' r='1.3' opacity='.3'/%3E%3C/g%3E%3C/svg%3E");background-size:360px 240px}
.ev-christmas .pt-band{position:relative}
.ev-christmas .pt-band::after{content:"";position:absolute;top:16px;right:26px;width:150px;height:112px;background-size:150px 112px;background-repeat:no-repeat;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='90' viewBox='0 0 120 90'%3E%3Cpath d='M30 8C50 2 70 2 90 8' fill='none' stroke='%23B3262E' stroke-width='4' stroke-linecap='round'/%3E%3Cpath d='M60 6C52 -2 40 0 44 8S58 8 60 6ZM60 6C68 -2 80 0 76 8S62 8 60 6Z' fill='%23B3262E'/%3E%3Ccircle cx='60' cy='6' r='4' fill='%238E1C24'/%3E%3Cg transform='translate(26 14) rotate(-14)'%3E%3Cpath d='M14 0a1.6 1.6 0 0 1 1.6 1.6v1A9 9 0 0 1 23 11.5V20l3.4 4.6H1.6L5 20v-8.5A9 9 0 0 1 12.4 2.6v-1A1.6 1.6 0 0 1 14 0z' fill='%23D8AD02' stroke='%238A6D00'/%3E%3Ccircle cx='14' cy='28' r='3.2' fill='%238A6D00'/%3E%3C/g%3E%3Cg transform='translate(66 10) rotate(12)'%3E%3Cpath d='M14 0a1.6 1.6 0 0 1 1.6 1.6v1A9 9 0 0 1 23 11.5V20l3.4 4.6H1.6L5 20v-8.5A9 9 0 0 1 12.4 2.6v-1A1.6 1.6 0 0 1 14 0z' fill='%23F2C94C' stroke='%238A6D00'/%3E%3Ccircle cx='14' cy='28' r='3.2' fill='%238A6D00'/%3E%3C/g%3E%3C/svg%3E");pointer-events:none}
.ev-christmas .ev-code-ic{background:#B3262E}
.ev-christmas .ev-partner{border-color:#E8A0A5;background:rgba(179,38,46,.25)}
@media (max-width:640px){.ev-christmas .pt-band::after{width:80px;height:60px;background-size:80px 60px;right:12px;top:10px}}
@media (prefers-reduced-motion:reduce){.ev-christmas .ev-bell,.ev-christmas .ev-mark,.ev-newyear .ev-mark{animation:none}}
/* Black Friday: black and gold, light touch */
.ev-blackfriday .ev-btn{background:#0E0E0E!important;color:#F2C94C!important;box-shadow:inset 0 0 0 1px #F2C94C}
.ev-blackfriday .recruit{background:#0E0E0E}
.ev-blackfriday .recruit .price.best{border-color:#F2C94C}
.ev-blackfriday .recruit .ev-sell-line{border:1px solid #F2C94C;background:rgba(242,201,76,.08)}
.ev-blackfriday .ev-partner{background:#0E0E0E;border-color:#F2C94C;color:#F2C94C!important}
.ev-blackfriday .pt-band{border-bottom-color:#0E0E0E}
.ev-blackfriday .ev-code-ic{background:#0E0E0E}
.ev-newyear .ev-btn{background:linear-gradient(110deg,#D8AD02 40%,#F7E08A 50%,#D8AD02 60%)}
.ev-blackfriday .util{background:#0E0E0E}
.ev-blackfriday .util .ev-sell{color:#F2C94C}
.ev-blackfriday .top{border-bottom-color:#0E0E0E}
.ev-blackfriday .ev-ribbon{background:#0E0E0E;color:#F2C94C;border:1px solid #F2C94C}
/* New Year: gold sparkle */
.ev-newyear div.top{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='360' height='240' viewBox='0 0 360 240'%3E%3Cpath transform='translate(40 50)' d='M0-9L2.0-2.0L9 0L2.0 2.0L0 9L-2.0 2.0L-9 0L-2.0-2.0Z' fill='%23F2D45C' opacity='0.55'/%3E%3Cpath transform='translate(210 30)' d='M0-5L1.1-1.1L5 0L1.1 1.1L0 5L-1.1 1.1L-5 0L-1.1-1.1Z' fill='%23fff' opacity='0.45'/%3E%3Cpath transform='translate(300 130)' d='M0-11L2.4-2.4L11 0L2.4 2.4L0 11L-2.4 2.4L-11 0L-2.4-2.4Z' fill='%23F2D45C' opacity='0.45'/%3E%3Cpath transform='translate(120 170)' d='M0-6L1.3-1.3L6 0L1.3 1.3L0 6L-1.3 1.3L-6 0L-1.3-1.3Z' fill='%23fff' opacity='0.4'/%3E%3Cpath transform='translate(250 215)' d='M0-4L0.9-0.9L4 0L0.9 0.9L0 4L-0.9 0.9L-4 0L-0.9-0.9Z' fill='%23F2D45C' opacity='0.5'/%3E%3Cg fill='%23F2D45C'%3E%3Ccircle cx='90' cy='95' r='1.6' opacity='.5'/%3E%3Ccircle cx='170' cy='80' r='1.2' opacity='.45'/%3E%3Ccircle cx='330' cy='40' r='1.6' opacity='.45'/%3E%3Ccircle cx='20' cy='200' r='1.3' opacity='.45'/%3E%3Ccircle cx='200' cy='140' r='1.1' opacity='.5'/%3E%3C/g%3E%3C/svg%3E");background-size:360px 240px}
/* New Year fireworks (Matt, 30 Oct 2026): gold and white bursts popping over the page tops, a few rounds then resting faint */
.ev-newyear div.top{position:relative;overflow-x:clip}
.ev-newyear div.top>*{position:relative;z-index:1}
.ev-newyear div.top::before,.ev-newyear div.top::after{content:"";position:absolute;top:0;right:2%;width:420px;height:220px;pointer-events:none;z-index:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='420' height='220' viewBox='0 0 420 220'%3E%3Cpath d='M110.3 80.0L148.0 80.0M108.8 87.8L143.6 102.2M104.4 94.4L131.0 121.0M97.8 98.8L112.2 133.6M90.0 100.3L90.0 138.0M82.2 98.8L67.8 133.6M75.6 94.4L49.0 121.0M71.2 87.8L36.4 102.2M69.7 80.0L32.0 80.0M71.2 72.2L36.4 57.8M75.6 65.6L49.0 39.0M82.2 61.2L67.8 26.4M90.0 59.7L90.0 22.0M97.8 61.2L112.2 26.4M104.4 65.6L131.0 39.0M108.8 72.2L143.6 57.8' stroke='%23F2D45C' stroke-width='2' stroke-linecap='round' fill='none'/%3E%3Cg fill='%23F2D45C'%3E%3Ccircle cx='153.7' cy='92.7' r='1.6'/%3E%3Ccircle cx='144.0' cy='116.1' r='1.6'/%3E%3Ccircle cx='126.1' cy='134.0' r='1.6'/%3E%3Ccircle cx='102.7' cy='143.7' r='1.6'/%3E%3Ccircle cx='77.3' cy='143.7' r='1.6'/%3E%3Ccircle cx='53.9' cy='134.0' r='1.6'/%3E%3Ccircle cx='36.0' cy='116.1' r='1.6'/%3E%3Ccircle cx='26.3' cy='92.7' r='1.6'/%3E%3Ccircle cx='26.3' cy='67.3' r='1.6'/%3E%3Ccircle cx='36.0' cy='43.9' r='1.6'/%3E%3Ccircle cx='53.9' cy='26.0' r='1.6'/%3E%3Ccircle cx='77.3' cy='16.3' r='1.6'/%3E%3Ccircle cx='102.7' cy='16.3' r='1.6'/%3E%3Ccircle cx='126.1' cy='26.0' r='1.6'/%3E%3Ccircle cx='144.0' cy='43.9' r='1.6'/%3E%3Ccircle cx='153.7' cy='67.3' r='1.6'/%3E%3C/g%3E%3Cpath d='M311.9 60.0L334.0 60.0M310.3 66.0L329.4 77.0M305.9 70.3L317.0 89.4M300.0 71.9L300.0 94.0M294.1 70.3L283.0 89.4M289.7 66.0L270.6 77.0M288.1 60.0L266.0 60.0M289.7 54.1L270.6 43.0M294.1 49.7L283.0 30.6M300.0 48.1L300.0 26.0M305.9 49.7L317.0 30.6M310.3 54.0L329.4 43.0' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round' fill='none'/%3E%3Cg fill='%23FFFFFF'%3E%3Ccircle cx='336.8' cy='69.9' r='1.6'/%3E%3Ccircle cx='326.9' cy='86.9' r='1.6'/%3E%3Ccircle cx='309.9' cy='96.8' r='1.6'/%3E%3Ccircle cx='290.1' cy='96.8' r='1.6'/%3E%3Ccircle cx='273.1' cy='86.9' r='1.6'/%3E%3Ccircle cx='263.2' cy='69.9' r='1.6'/%3E%3Ccircle cx='263.2' cy='50.1' r='1.6'/%3E%3Ccircle cx='273.1' cy='33.1' r='1.6'/%3E%3Ccircle cx='290.1' cy='23.2' r='1.6'/%3E%3Ccircle cx='309.9' cy='23.2' r='1.6'/%3E%3Ccircle cx='326.9' cy='33.1' r='1.6'/%3E%3Ccircle cx='336.8' cy='50.1' r='1.6'/%3E%3C/g%3E%3C/svg%3E") no-repeat;opacity:.35;transform-origin:30% 40%;animation:ev-pop 3.2s ease-out .3s 4 both}
.ev-newyear div.top::after{right:auto;left:38%;top:10px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='420' height='220' viewBox='0 0 420 220'%3E%3Cpath d='M236.1 120.0L266.0 120.0M234.5 127.0L261.4 140.0M230.0 132.6L248.7 156.0M223.6 135.7L230.2 164.8M216.4 135.7L209.8 164.8M210.0 132.6L191.3 156.0M205.5 127.0L178.6 140.0M203.9 120.0L174.0 120.0M205.5 113.0L178.6 100.0M210.0 107.4L191.3 84.0M216.4 104.3L209.8 75.2M223.6 104.3L230.2 75.2M230.0 107.4L248.7 84.0M234.5 113.0L261.4 100.0' stroke='%23F2D45C' stroke-width='2' stroke-linecap='round' fill='none'/%3E%3Cg fill='%23F2D45C'%3E%3Ccircle cx='270.2' cy='131.5' r='1.6'/%3E%3Ccircle cx='260.3' cy='152.1' r='1.6'/%3E%3Ccircle cx='242.4' cy='166.4' r='1.6'/%3E%3Ccircle cx='220.0' cy='171.5' r='1.6'/%3E%3Ccircle cx='197.6' cy='166.4' r='1.6'/%3E%3Ccircle cx='179.7' cy='152.1' r='1.6'/%3E%3Ccircle cx='169.8' cy='131.5' r='1.6'/%3E%3Ccircle cx='169.8' cy='108.5' r='1.6'/%3E%3Ccircle cx='179.7' cy='87.9' r='1.6'/%3E%3Ccircle cx='197.6' cy='73.6' r='1.6'/%3E%3Ccircle cx='220.0' cy='68.5' r='1.6'/%3E%3Ccircle cx='242.4' cy='73.6' r='1.6'/%3E%3Ccircle cx='260.3' cy='87.9' r='1.6'/%3E%3Ccircle cx='270.2' cy='108.5' r='1.6'/%3E%3C/g%3E%3Cpath d='M369.1 150.0L386.0 150.0M367.4 155.3L381.0 165.3M362.8 158.7L368.0 174.7M357.2 158.7L352.0 174.7M352.6 155.3L339.0 165.3M350.9 150.0L334.0 150.0M352.6 144.7L339.0 134.7M357.2 141.3L352.0 125.3M362.8 141.3L368.0 125.3M367.4 144.7L381.0 134.7' stroke='%23F7E08A' stroke-width='2' stroke-linecap='round' fill='none'/%3E%3Cg fill='%23F7E08A'%3E%3Ccircle cx='387.7' cy='159.0' r='1.6'/%3E%3Ccircle cx='377.1' cy='173.6' r='1.6'/%3E%3Ccircle cx='360.0' cy='179.1' r='1.6'/%3E%3Ccircle cx='342.9' cy='173.6' r='1.6'/%3E%3Ccircle cx='332.3' cy='159.0' r='1.6'/%3E%3Ccircle cx='332.3' cy='141.0' r='1.6'/%3E%3Ccircle cx='342.9' cy='126.4' r='1.6'/%3E%3Ccircle cx='360.0' cy='120.9' r='1.6'/%3E%3Ccircle cx='377.1' cy='126.4' r='1.6'/%3E%3Ccircle cx='387.7' cy='141.0' r='1.6'/%3E%3C/g%3E%3Cpath d='M67.7 170.0L82.0 170.0M66.2 174.5L77.8 182.9M62.4 177.3L66.8 190.9M57.6 177.3L53.2 190.9M53.8 174.5L42.2 182.9M52.3 170.0L38.0 170.0M53.8 165.5L42.2 157.1M57.6 162.7L53.2 149.1M62.4 162.7L66.8 149.1M66.2 165.5L77.8 157.1' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round' fill='none'/%3E%3Cg fill='%23FFFFFF'%3E%3Ccircle cx='83.4' cy='177.6' r='1.6'/%3E%3Ccircle cx='74.5' cy='189.9' r='1.6'/%3E%3Ccircle cx='60.0' cy='194.6' r='1.6'/%3E%3Ccircle cx='45.5' cy='189.9' r='1.6'/%3E%3Ccircle cx='36.6' cy='177.6' r='1.6'/%3E%3Ccircle cx='36.6' cy='162.4' r='1.6'/%3E%3Ccircle cx='45.5' cy='150.1' r='1.6'/%3E%3Ccircle cx='60.0' cy='145.4' r='1.6'/%3E%3Ccircle cx='74.5' cy='150.1' r='1.6'/%3E%3Ccircle cx='83.4' cy='162.4' r='1.6'/%3E%3C/g%3E%3C/svg%3E");animation-delay:1.9s}
@keyframes ev-pop{0%{opacity:0;transform:scale(.35)}18%{opacity:1;transform:scale(1)}60%{opacity:.75}100%{opacity:.35;transform:scale(1.05)}}
@media (max-width:760px){.ev-newyear div.top::after{display:none}.ev-newyear div.top::before{width:260px;height:136px;background-size:260px 136px}}
@media (prefers-reduced-motion:reduce){.ev-newyear div.top::before,.ev-newyear div.top::after{animation:none}}
.ev-newyear .ev-ribbon,.ev-newyear .ev-pill{background:#022F3F;color:#F2D45C;border:1px solid #F2D45C}
.ev-newyear .ev-mark{display:inline-block;width:26px;height:26px;margin-left:12px;vertical-align:2px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 26 26'%3E%3Cpath transform='translate(13 13)' d='M0-12L2.6-2.6L12 0L2.6 2.6L0 12L-2.6 2.6L-12 0L-2.6-2.6Z' fill='%23F2D45C' opacity='1'/%3E%3Cpath transform='translate(13 13)' d='M0-6L1.3-1.3L6 0L1.3 1.3L0 6L-1.3 1.3L-6 0L-1.3-1.3Z' fill='%23fff' opacity='0.8'/%3E%3C/svg%3E") no-repeat;animation:ev-twinkle 2.4s ease-in-out .4s 3}
@keyframes ev-twinkle{0%,100%{transform:scale(1) rotate(0);opacity:1}50%{transform:scale(.7) rotate(45deg);opacity:.7}}
.ev-blackfriday .ev-mark{display:inline-block;margin-left:14px;vertical-align:8px}
.ev-blackfriday .ev-mark::before{content:"Black Friday week";display:inline-block;padding:4px 10px;border-radius:6px;border:1px solid #F2C94C;background:#0E0E0E;color:#F2C94C;font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
/* Halloween look (31 Oct 2026): pumpkin orange + bats on the header, pumpkin mark; words in Seasons & events */
.ev-halloween div.top{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='360' height='240' viewBox='0 0 360 240'%3E%3Cpath transform='translate(50 50) scale(1.1)' d='M0 0C-4-6-12-8-18-4C-14-3-12 0-12 3C-9 1-5 1-3 4C-2 1-1 0 0-1C1 0 2 1 3 4C5 1 9 1 12 3C12 0 14-3 18-4C12-8 4-6 0 0Z' fill='%23170B22' opacity='0.35'/%3E%3Cpath transform='translate(215 32) scale(0.7)' d='M0 0C-4-6-12-8-18-4C-14-3-12 0-12 3C-9 1-5 1-3 4C-2 1-1 0 0-1C1 0 2 1 3 4C5 1 9 1 12 3C12 0 14-3 18-4C12-8 4-6 0 0Z' fill='%23170B22' opacity='0.3'/%3E%3Cpath transform='translate(305 128) scale(1.3)' d='M0 0C-4-6-12-8-18-4C-14-3-12 0-12 3C-9 1-5 1-3 4C-2 1-1 0 0-1C1 0 2 1 3 4C5 1 9 1 12 3C12 0 14-3 18-4C12-8 4-6 0 0Z' fill='%23170B22' opacity='0.28'/%3E%3Cpath transform='translate(125 172) scale(0.85)' d='M0 0C-4-6-12-8-18-4C-14-3-12 0-12 3C-9 1-5 1-3 4C-2 1-1 0 0-1C1 0 2 1 3 4C5 1 9 1 12 3C12 0 14-3 18-4C12-8 4-6 0 0Z' fill='%23170B22' opacity='0.3'/%3E%3Cpath transform='translate(255 212) scale(0.6)' d='M0 0C-4-6-12-8-18-4C-14-3-12 0-12 3C-9 1-5 1-3 4C-2 1-1 0 0-1C1 0 2 1 3 4C5 1 9 1 12 3C12 0 14-3 18-4C12-8 4-6 0 0Z' fill='%23170B22' opacity='0.3'/%3E%3Cg fill='%23FFB347'%3E%3Ccircle cx='90' cy='95' r='1.6' opacity='.5'/%3E%3Ccircle cx='170' cy='80' r='1.2' opacity='.45'/%3E%3Ccircle cx='330' cy='40' r='1.6' opacity='.45'/%3E%3Ccircle cx='20' cy='200' r='1.3' opacity='.45'/%3E%3C/g%3E%3C/svg%3E");background-size:360px 240px}
.ev-halloween .ev-ribbon,.ev-halloween .ev-pill{background:#E8731A;color:#fff;border-color:#E8731A}
.ev-halloween .ev-band{background:#2A1238;color:#FFB347}
.ev-halloween .ev-code-ic{background:#E8731A}
.ev-halloween .ev-partner{border-color:#FFB347;background:rgba(232,115,26,.22)}
.ev-halloween .topjob .b-top,.ev-halloween .topjob-side .b-top{background:#E8731A}
.ev-halloween .ev-mark{display:inline-block;width:26px;height:26px;margin-left:12px;vertical-align:2px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 26 26'%3E%3Cpath d='M13 7c-1-3 0-5 2-6' stroke='%233F6B2A' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3Cellipse cx='8' cy='16' rx='6' ry='8' fill='%23E8731A'/%3E%3Cellipse cx='18' cy='16' rx='6' ry='8' fill='%23E8731A'/%3E%3Cellipse cx='13' cy='16' rx='6' ry='8.5' fill='%23F28C28'/%3E%3Cpath d='M8 13l2.5 2H6zM18 13l2 2h-4.5zM8 19q5 4 10 0l-2 1-1-1-2 1-1-1-2 1z' fill='%23401A05'/%3E%3C/svg%3E") no-repeat;transform-origin:50% 90%;animation:ev-wobble 1.8s ease-in-out .5s 3}
.ev-halloween .ev-btn{position:relative;overflow:visible}
.ev-halloween .ev-btn::after{content:"";position:absolute;top:-15px;right:6px;width:28px;height:26px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='26' viewBox='0 0 28 26'%3E%3Cpath d='M14 6c0-2 1-4 3-5' stroke='%23355E1E' stroke-width='2.2' fill='none' stroke-linecap='round'/%3E%3Cellipse cx='9' cy='15.5' rx='7' ry='9' fill='%23D9661A'/%3E%3Cellipse cx='19' cy='15.5' rx='7' ry='9' fill='%23D9661A'/%3E%3Cellipse cx='14' cy='15.5' rx='6.5' ry='9.5' fill='%23F08A24'/%3E%3Cpath d='M8 13l3 2-3 1zM20 13l-3 2 3 1zM9 19q5 4 10 0q-2 3-5 3t-5-3z' fill='%232A1238'/%3E%3C/svg%3E") no-repeat;pointer-events:none;transform-origin:50% 100%}
.ev-halloween .ev-btn:hover::after{animation:ev-wobble .6s ease-in-out 2}
/* a little spider drops from the header's Advertise button */
.ev-halloween .top .ev-btn::before{content:"";position:absolute;bottom:-30px;left:14px;width:16px;height:34px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='34' viewBox='0 0 16 34'%3E%3Cline x1='8' y1='0' x2='8' y2='22' stroke='%23ffffff' stroke-opacity='.7' stroke-width='1'/%3E%3Cg stroke='%231A1A1A' stroke-width='1.3' fill='none' stroke-linecap='round'%3E%3Cpath d='M6 25l-4-3M6 27l-5 0M6 29l-4 3M10 25l4-3M10 27l5 0M10 29l4 3'/%3E%3C/g%3E%3Ccircle cx='8' cy='23.5' r='2.4' fill='%231A1A1A'/%3E%3Cellipse cx='8' cy='28' rx='3.4' ry='4' fill='%231A1A1A'/%3E%3C/svg%3E") no-repeat;pointer-events:none;transform-origin:50% 0;animation:ev-dangle 3.2s ease-in-out infinite}
.ev-halloween .bar-sell.ev-btn::after{top:-11px;right:-6px;width:20px;height:19px;background-size:20px 19px!important}
.ev-halloween .bar-sell.ev-btn::before{left:8px;bottom:-26px}
@keyframes ev-dangle{0%,100%{transform:translateY(-6px) rotate(-4deg)}50%{transform:translateY(2px) rotate(4deg)}}
@media (prefers-reduced-motion:reduce){.ev-halloween .top .ev-btn::before,.ev-halloween .ev-btn:hover::after{animation:none}}
/* Halloween on the Advertise page: cobweb + spider in the Premium card's corner, 'Pick of the patch' tag (31 Oct 2026) */
.ev-halloween .plan-premium{box-shadow:0 0 0 2px #E8731A,0 4px 14px rgba(3,82,109,.06)}
.ev-halloween .plan-premium .plan-h{position:relative;z-index:1}
.ev-halloween .plan-premium .ev-web{display:block;position:absolute;top:0;right:0;width:80px;height:80px;background-size:80px 80px!important;z-index:0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='96' viewBox='0 0 96 96'%3E%3Cg fill='none' stroke='%237A6A86' stroke-width='1.1' stroke-opacity='.75'%3E%3Cpath d='M96 0L18 46M96 0L50 78M96 0L40 10M96 0L86 56'/%3E%3Cpath d='M78 0Q82 10 96 14M60 0Q66 22 96 30M42 0Q50 34 96 48M24 0Q34 46 96 66'/%3E%3C/g%3E%3Cline x1='74' y1='16' x2='74' y2='44' stroke='%23555' stroke-width='1'/%3E%3Cg stroke='%231A1A1A' stroke-width='1.4' stroke-linecap='round'%3E%3Cpath d='M71 47l-4-3M71 49h-5M71 51l-4 3M77 47l4-3M77 49h5M77 51l4 3'/%3E%3C/g%3E%3Ccircle cx='74' cy='45.5' r='2.4' fill='%231A1A1A'/%3E%3Cellipse cx='74' cy='50' rx='3.4' ry='4' fill='%231A1A1A'/%3E%3C/svg%3E") no-repeat;pointer-events:none;border-top-right-radius:inherit}
.ev-halloween .plan-premium .pop-tag{display:none}
.ev-halloween .plan-premium .ev-patch{display:inline-block;position:absolute;top:-14px;left:24px;background:#E8731A;color:#fff;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:5px 12px 5px 30px;border-radius:999px;z-index:2;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='15' viewBox='0 0 28 26'%3E%3Cpath d='M14 6c0-2 1-4 3-5' stroke='%23355E1E' stroke-width='2.4' fill='none'/%3E%3Cellipse cx='9' cy='15.5' rx='7' ry='9' fill='%23FFD08A'/%3E%3Cellipse cx='19' cy='15.5' rx='7' ry='9' fill='%23FFD08A'/%3E%3Cellipse cx='14' cy='15.5' rx='6.5' ry='9.5' fill='%23FFE3B5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:10px 50%}
.ev-halloween .topjob,.ev-halloween .topjob-side{position:relative}
.ev-halloween .topjob::after,.ev-halloween .topjob-side::after{content:"";position:absolute;top:0;right:0;width:80px;height:80px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='96' viewBox='0 0 96 96'%3E%3Cg fill='none' stroke='%237A6A86' stroke-width='1.1' stroke-opacity='.75'%3E%3Cpath d='M96 0L18 46M96 0L50 78M96 0L40 10M96 0L86 56'/%3E%3Cpath d='M78 0Q82 10 96 14M60 0Q66 22 96 30M42 0Q50 34 96 48M24 0Q34 46 96 66'/%3E%3C/g%3E%3Cline x1='74' y1='16' x2='74' y2='44' stroke='%23555' stroke-width='1'/%3E%3Cg stroke='%231A1A1A' stroke-width='1.4' stroke-linecap='round'%3E%3Cpath d='M71 47l-4-3M71 49h-5M71 51l-4 3M77 47l4-3M77 49h5M77 51l4 3'/%3E%3C/g%3E%3Ccircle cx='74' cy='45.5' r='2.4' fill='%231A1A1A'/%3E%3Cellipse cx='74' cy='50' rx='3.4' ry='4' fill='%231A1A1A'/%3E%3C/svg%3E") no-repeat;background-size:80px 80px;pointer-events:none;border-top-right-radius:10px}
.ev-halloween .topjob-side::after{width:60px;height:60px;background-size:60px 60px}
@keyframes ev-wobble{0%,100%{transform:rotate(0)}25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}
@media (prefers-reduced-motion:reduce){.ev-halloween .ev-mark{animation:none}}
/* Role hubs (31 Oct 2026): typical pay table */
.role-pay{padding:24px 26px;margin-top:12px}
.pay-table{width:100%;border-collapse:collapse;font-size:15px;margin-top:6px}
.pay-table th,.pay-table td{text-align:left;padding:9px 8px;border-bottom:1px solid var(--line,#e6e2d8)}
.pay-table thead th{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2,#55635C);font-weight:700}
.pay-table tbody th{font-weight:600}
.pay-table td{font-variant-numeric:tabular-nums;white-space:nowrap}
.pay-note{margin:12px 0 0;font-size:14px;line-height:1.6;color:var(--ink-2,#55635C)}
@media (max-width:560px){.pay-table{font-size:14px}.pay-table th,.pay-table td{padding:8px 4px}.pay-table td{white-space:normal}}

/* Working pattern pills + quick filters + shortlist (1 Nov 2026) */
.wk{display:flex;flex-wrap:wrap;gap:4px;margin:2px 0 4px}
.wk-pill{display:inline-block;font-size:12px;font-weight:700;line-height:1;padding:4px 7px;border-radius:999px;background:var(--brand-tint,#e8f2f5);color:var(--brand,#03526D);border:1px solid var(--line)}
.quick-f{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 16px}
.quick-f .qf-lab{font-size:13px;font-weight:700;color:var(--muted)}
.quick-f .qf{display:inline-flex;align-items:center;min-height:36px;padding:0 13px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:14px;font-weight:600;text-decoration:none}
.quick-f .qf:hover{border-color:var(--brand)}
.quick-f .qf.on{background:var(--brand);border-color:var(--brand);color:#fff}
.has-sl{padding-right:52px!important}
.sl-heart{position:absolute;top:10px;right:10px;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:#fff;color:#b9c2c7;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;z-index:2}
.sl-heart svg{fill:none}
.sl-heart:hover{color:#d9485f;border-color:#d9485f}
.sl-heart.on{color:#d9485f;border-color:#f3c3cb;background:#fff5f6}
.sl-heart.on svg,.sl-save.on svg{fill:currentColor}
.sl-heart:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.sl-save{background:none;border:0;padding:0;cursor:pointer;font:inherit;color:inherit;display:inline-flex;align-items:center;gap:6px}
.sl-save svg{fill:none}
.sl-save.on{color:#d9485f}
.sl-link{display:inline-flex;align-items:center;gap:5px;color:#fff;text-decoration:none;font-weight:700;font-size:14px;min-height:38px;padding:0 10px;border-radius:8px;border:1px solid rgba(255,255,255,.35)}
.sl-link svg{color:#ff8fa0}
.sl-link:hover{background:rgba(255,255,255,.1)}
.sl-link[hidden]{display:none!important}
.sl-link-bar{display:none}
@media (max-width:900px){.sl-link-bar{display:inline-flex;margin-left:auto}.sl-link-bar:not([hidden])~.bar-sell{margin-left:0}.sl-link-nav{display:none!important}}
.sl-list{display:grid;gap:10px}
.sl-gone .loc-job{opacity:.6}
.lj-when.sl-soon{color:#b4232c;font-weight:700}
.sec-links{display:inline-flex;flex-wrap:wrap;gap:6px 18px;justify-content:flex-end}

/* Free apprenticeship adverts band (1 Nov 2026) */
.appr-band{display:flex;align-items:center;gap:16px;padding:18px 22px;margin-top:18px;flex-wrap:wrap}
.appr-ic{flex:0 0 auto;width:48px;height:48px;border-radius:50%;background:var(--brand-tint,#e8f2f5);color:var(--brand);display:inline-flex;align-items:center;justify-content:center}
.appr-t{flex:1 1 320px}
.appr-t p{margin:0;color:var(--ink-2);line-height:1.55}
.appr-t .appr-h{font-family:var(--head);font-weight:700;font-size:18px;color:var(--ink);margin-bottom:4px}
.appr-cta{flex:0 0 auto}
/* hearts on the Top Jobs strip and spotlight cards */
.tops-row a.has-sl{padding-right:40px!important}
.tops-row .sl-heart{width:28px;height:28px;top:6px;right:6px}
.tops-row .sl-heart svg{width:15px;height:15px}

/* first-save bubble above the heart (1 Nov 2026) */
.sl-tip{position:absolute;z-index:60;max-width:240px;background:var(--brand-deep,#023b4f);color:#fff;font-size:13.5px;line-height:1.4;padding:9px 12px;border-radius:10px;box-shadow:0 6px 20px rgba(0,0,0,.18);cursor:pointer;animation:sltip .2s ease-out}
.sl-tip::after{content:"";position:absolute;top:100%;left:var(--ax,50%);margin-left:-7px;border:7px solid transparent;border-top-color:var(--brand-deep,#023b4f)}
.sl-tip.out{opacity:0;transform:translateY(-4px);transition:.25s}
@keyframes sltip{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.sl-pulse{animation:slpulse .8s ease-in-out 3}
@keyframes slpulse{50%{transform:scale(1.15);box-shadow:0 0 0 4px rgba(255,143,160,.35)}}
@media (prefers-reduced-motion:reduce){.sl-tip,.sl-pulse{animation:none}}

/* Weekly strip: optional area (1 Nov 2026, "personalised") */
.wk-strip input#wk-email{width:220px}
.wk-strip input.wk-area{width:180px}
@media (max-width:900px){.wk-strip input#wk-email,.wk-strip input.wk-area{width:auto}}
@media (max-width:640px){.wk-strip input#wk-email,.wk-strip input.wk-area{width:100%}}
.alerts input.wk-area{margin-top:8px}
.wk-strip .wk-row input.wk-area{width:180px}
@media (max-width:900px){.wk-strip .wk-row input.wk-area{width:auto}}
@media (max-width:640px){.wk-strip .wk-row input.wk-area{width:100%}}
.pt-eg{margin:22px 0 0;padding:20px;border-radius:14px;background:rgba(255,255,255,.06);border:1px dashed rgba(255,255,255,.35)}
.pt-eg-h{margin:0 0 14px;font-family:var(--head);font-size:19px;color:#fff;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px}.pt-eg-h span{font-family:var(--body,inherit);font-size:13px;font-weight:400;opacity:.8}
.pt-eg-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.pt-eg-card{background:#fff;color:var(--ink,#16323C);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:10px;min-width:0}
.pt-eg-t{margin:0;font-weight:700;font-size:15px}.pt-eg-s{margin:0;font-size:13px;color:var(--muted,#5B7079)}
.pt-eg-job{display:flex;gap:10px;align-items:flex-start;padding:10px;border:1px solid #E2EAED;border-radius:10px}
.pt-eg-job>span:last-child{display:flex;flex-direction:column;gap:3px;min-width:0}.pt-eg-job b{font-size:14px}.pt-eg-job em{font-style:normal;font-size:13px;color:var(--muted,#5B7079)}
.pt-eg-logo{flex:0 0 40px;height:40px;border-radius:8px;background:var(--brand);color:#fff;display:grid;place-items:center;font-weight:700;font-size:13px}
.pt-eg-badges .badge{font-size:10px;padding:2px 7px}
.pt-eg-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.pt-eg-strip span{height:38px;border-radius:8px;background:#EEF3F5}
.pt-eg-strip .you{background:#fff;border:2px solid var(--gold);display:grid;place-items:center;font-size:12px;font-weight:700;color:var(--brand)}
.pt-eg-res{margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.pt-eg-res div{background:#EEF3F5;border-radius:8px;padding:8px}
.pt-eg-res dt{font-size:11px;color:var(--muted,#5B7079)}.pt-eg-res dd{margin:2px 0 0;font-family:var(--head);font-size:20px;color:var(--brand)}
@media (max-width:860px){.pt-eg-grid{grid-template-columns:1fr}}
.plan-pick .pp-wide{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px 18px;padding:12px 16px}
.pp-wide .pn{font-size:16px}.pp-wide .pv{font-size:22px}.pp-wide .pt{margin:0;flex:1 1 260px;font-size:14px}.pp-wide .pq{margin:0}
@media (max-width:640px){.pp-wide .pt{flex-basis:100%}}
.pt-eg-strip{grid-template-columns:repeat(4,1fr)!important}.pt-eg-lab{margin:0;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted,#5B7079)}
.pp .pt a{color:inherit;text-decoration:underline}

/* home-screen app bar (1 Nov 2026) */
.app-bar{position:fixed;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:80;display:flex;align-items:center;gap:10px;background:#fff;color:var(--ink,#1A2B33);border:1px solid var(--line,#E2EAED);border-radius:14px;box-shadow:0 10px 30px rgba(0,0,0,.18);padding:10px 10px 10px 12px;animation:sltip .25s ease-out}
.app-bar img{border-radius:9px;flex:none}
.app-bar p{margin:0;flex:1;font-size:14px;line-height:1.35}.app-bar p strong{display:block;font-size:15px}.app-bar p span{color:var(--muted,#5B6B72)}
.app-bar svg{vertical-align:-3px;color:#007AFF}
.app-add{background:var(--brand);color:#fff;border:0;border-radius:8px;padding:9px 14px;font-weight:700;font-size:15px}
.app-x{background:none;border:0;font-size:24px;line-height:1;color:var(--muted,#5B6B72);padding:4px 6px}

/* My jobs (1 Nov 2026) */
.acct-link{display:inline-flex!important;align-items:center;gap:6px}
@media (min-width:901px){.acct-link span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}}
.mj-card{padding:20px 22px;margin:0 0 18px}.mj-card h2{font-size:21px;margin:0 0 8px}.mj-card p{margin:0 0 10px}
.mj-note{padding:12px 14px;border-radius:10px;margin:0 0 18px;font-weight:600}.mj-ok{background:#ECF7EF;color:#1E6B3A;border:1px solid #CDE9D5}.mj-err{background:#FDECEC;color:#B42318;border:1px solid #F5C9C9}
.mj-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.mj-row input[type=email],.mj-row input[name=confirm]{flex:1 1 240px;min-height:46px;padding:0 12px;border:1px solid var(--line,#CBD5DA);border-radius:8px;font:inherit}
.mj-why{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.mj-why div{background:var(--tint,#F2F7F9);border-radius:12px;padding:14px}.mj-why b{display:block;margin-bottom:4px}.mj-why span{font-size:14.5px;color:var(--muted,#5B6B72)}
.mj-n{display:inline-block;min-width:24px;padding:1px 8px;border-radius:20px;background:var(--tint,#F2F7F9);font-size:14px;text-align:center;vertical-align:3px;color:var(--brand)}
.mj-job{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;border-top:1px solid var(--line,#E2EAED)}
.mj-job>div{flex:1 1 260px;min-width:0}.mj-job a{font-weight:700;color:var(--brand);text-decoration:none}.mj-job span{display:block;font-size:14px;color:var(--muted,#5B6B72)}
.mj-yn{display:flex;gap:8px}.btn-sm{padding:7px 12px!important;font-size:14px!important;min-height:0!important}
.mj-sel{min-height:40px;border-radius:8px;border:1px solid var(--line,#CBD5DA);padding:0 10px;font:inherit;font-weight:600;background:#fff}
.mj-s-interview{background:#FFF8E1;border-color:#F1D58A}.mj-s-offer{background:#ECF7EF;border-color:#A9D8B6;color:#1E6B3A}.mj-s-no,.mj-s-withdrawn{color:var(--muted,#5B6B72)}
.mj-cvnow{background:var(--tint,#F2F7F9);padding:8px 12px;border-radius:8px;margin:0 0 8px!important}
.mj-linkbtn{background:none;border:0;padding:0;color:var(--brand);text-decoration:underline;font:inherit;cursor:pointer}
.mj-danger{color:#B42318!important;border-color:#F5C9C9!important}
.apply-saved{display:flex;gap:10px;align-items:center;background:var(--tint,#F2F7F9);border-radius:10px;padding:10px 12px;margin:0 0 10px}
/* "Add it to your home screen" badge (app-store style, our own design) */
.app-badge{display:inline-flex;align-items:center;gap:10px;background:#111;color:#fff;border:1px solid #444;border-radius:12px;padding:8px 16px 8px 9px;cursor:pointer;font:inherit;text-align:left;line-height:1.1}
.app-badge:hover{background:#000}.app-badge img{border-radius:8px}
.app-badge small{display:block;font-size:11.5px;letter-spacing:.02em;opacity:.9}.app-badge b{display:block;font-size:19px;font-weight:600;letter-spacing:-.01em}
.app-badge-sm{padding:6px 13px 6px 7px}.app-badge-sm img{width:28px;height:28px}.app-badge-sm b{font-size:16px}.app-badge-sm small{font-size:10.5px}
.app-badge[hidden]{display:none}
.foot-app{margin-top:14px}
.app-how{position:fixed;inset:0;z-index:90;background:rgba(0,0,0,.45);display:flex;align-items:flex-end;justify-content:center;padding:12px}
@media (min-width:700px){.app-how{align-items:center}}
.app-how-in{position:relative;background:#fff;color:var(--ink,#1A2B33);border-radius:16px;max-width:440px;width:100%;padding:22px 22px 18px;box-shadow:0 20px 50px rgba(0,0,0,.3)}
.app-how-in img{border-radius:12px}.app-how-in h2{font-size:20px;margin:10px 0 10px}.app-how-in ol,.app-how-in ul{margin:0 0 8px;padding-left:20px}.app-how-in li{margin:0 0 8px}
.app-how-in svg{vertical-align:-3px;color:#007AFF}.app-how-in .app-x{position:absolute;top:8px;right:10px}

.app-badge-wide{display:inline-flex;width:auto;max-width:max-content}
.app-badge .ab-works{display:flex;align-items:center;gap:8px;padding-left:16px;border-left:1px solid #444;color:#ddd}
.app-badge .ab-works b{font-size:15px}
.app-badge .ab-say{flex:1;font-family:var(--head);font-style:italic;font-weight:700;font-size:17px;text-align:right;color:#fff}
@media (max-width:760px){.app-badge-wide{flex-wrap:wrap}.app-badge .ab-say{flex-basis:100%;text-align:left;font-size:15px}}
@media (max-width:420px){.app-badge .ab-works{border:0;padding-left:0}}

/* My Jobs icon in the phone bar, beside Advertise (Matt, 1 Nov 2026) */
.acct-bar{display:none}
@media (max-width:900px){.acct-bar{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;width:38px;height:38px;border-radius:8px;border:1px solid rgba(255,255,255,.35);color:#fff}
  .acct-bar:hover{background:rgba(255,255,255,.1)}.acct-bar~.sl-link-bar,.acct-bar~.bar-sell{margin-left:0!important}}
@media (max-width:400px){.acct-bar{width:34px;height:34px}}
.app-badge-wide{display:inline-flex;width:auto;gap:12px;padding:7px 16px 7px 8px}.app-badge-wide b{font-size:17px}.app-badge-wide .ab-works{padding-left:12px}.app-badge-wide .ab-works b{font-size:14px}
.app-badge .ab-os{display:inline-flex;align-items:center;gap:8px;margin-left:4px;padding-left:12px;border-left:1px solid #444;color:#ddd}.app-badge-sm .ab-os svg:first-child{width:14px;height:20px}
/* phone bar with the My Jobs icon: keep logo, icon, Advertise and the menu on one line down to 360px (1 Nov 2026) */
@media (max-width:420px){.top .bar{gap:6px;flex-wrap:nowrap}.top .brand{gap:6px;min-width:0}.top .brand span{font-size:14.5px}.top .brand img{width:26px;height:auto}
  .acct-bar{width:32px;height:32px}.bar-sell{padding:0 8px;font-size:12.5px;min-height:32px}.top .bar .menu-btn{width:34px;flex:none}}
@media (max-width:350px){.top .brand span{font-size:13px}}
@media (max-width:420px){.top .bar:has(.sl-link-bar:not([hidden])){gap:5px}.top .bar:has(.sl-link-bar:not([hidden])) .brand span{font-size:13px}.top .bar:has(.sl-link-bar:not([hidden])) .brand img{width:22px}.sl-link-bar{padding:0 6px;min-height:32px;gap:3px}}
/* footer: Advertise and the home-screen badge stacked, the same width (Matt, 1 Nov 2026) */
.foot .foot-ctas{display:inline-flex;flex-direction:column;align-items:stretch;gap:10px;margin-top:14px}
.foot .foot-ctas .foot-sell{margin-top:0;justify-content:center}.foot .foot-ctas .foot-app{margin-top:0}
.foot .foot-ctas .app-badge{display:flex;width:100%;box-sizing:border-box}.foot .foot-ctas .ab-os{margin-left:auto}
/* Weekly strip on the home page (Matt, 1 Nov 2026: looked squeezed on desktop): the eyebrow sits above the title, and the
   form goes on its own row under the text until there's room for both side by side */
.wk-strip .wk-h{display:flex;flex-direction:column-reverse}
.wk-strip .wk-eb{display:block;margin:0 0 3px}
@media (max-width:1240px){.wk-strip{flex-wrap:wrap;align-items:flex-start}.wk-strip .wk-txt{flex:1 1 0}
  .wk-strip .wk-row{flex:1 1 100%;min-width:0;padding-left:52px;box-sizing:border-box}
  .wk-strip .wk-row input#wk-email,.wk-strip .wk-row input.wk-area{flex:1 1 0;width:auto;min-width:0}}
@media (max-width:640px){.wk-strip .wk-row{padding-left:0}.wk-strip .wk-row input#wk-email,.wk-strip .wk-row input.wk-area{flex:0 0 46px;width:100%}}
/* phone bar never wraps: the menu stays top right (Matt, 1 Nov 2026) */
@media (max-width:900px){.top .bar{flex-wrap:nowrap}.top .bar .brand{flex:0 1 auto;min-width:0;overflow:hidden}.top .bar .brand span{white-space:nowrap}.top .bar .menu-btn,.top .bar .bar-sell,.top .bar .acct-bar,.top .bar .sl-link-bar{flex:none}}
@media (max-width:420px){.top .bar.has-sl{gap:5px}.top .bar.has-sl .brand span{font-size:13px}.top .bar.has-sl .brand img{width:22px}}
@media (max-width:360px){.top .bar.has-sl .brand span{font-size:11.5px}.top .bar.has-sl .bar-sell{padding:0 6px;font-size:12px}}
@media (max-width:420px){.top .bar.has-sl{gap:4px}.top .bar.has-sl .brand{overflow:visible;flex:none}.top .bar.has-sl .brand span{font-size:12.5px}.top .bar.has-sl .brand img{width:20px}
  .top .bar.has-sl .sl-link-bar{padding:0 5px;border-color:transparent}.top .bar.has-sl .acct-bar{width:30px}.top .bar.has-sl .bar-sell{padding:0 7px;font-size:12px}}
@media (max-width:360px){.top .bar.has-sl .brand span{font-size:11px}.top .bar.has-sl .brand{gap:4px}}
.mj-undo{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}
/* the badge as a proper button (Matt, 1 Nov 2026): only as wide as its contents, rounded, lifts on hover */
.app-badge{width:auto;max-width:max-content;border-radius:14px;box-shadow:0 2px 6px rgba(0,0,0,.18);transition:transform .12s,box-shadow .12s}
.app-badge:hover{transform:translateY(-1px);box-shadow:0 6px 14px rgba(0,0,0,.25)}
.app-badge:active{transform:translateY(0);box-shadow:0 1px 3px rgba(0,0,0,.2)}
.foot .foot-ctas .app-badge{max-width:none}
.mj-undo{scroll-margin-top:90px}
/* desktop header on one line with My Jobs + the heart (Matt, 1 Nov 2026: PUBLICSECTORFINANCEJOBS.COM is a touch wider): tighter gaps, then smaller type */
@media (min-width:901px){.top .bar{flex-wrap:nowrap;gap:20px}.top .bar .brand{flex:none}.nav{flex-wrap:nowrap;gap:clamp(8px,1.3vw,22px);justify-content:flex-end}.nav a{white-space:nowrap}.nav .sl-link-nav{padding:0 8px}}
@media (min-width:901px) and (max-width:1240px){.nav a{font-size:14px;padding:10px 2px}.nav a.btn-gold{padding:0 12px}.top .brand span{font-size:23px}.top .brand img{height:26px}}
@media (min-width:901px) and (max-width:1060px){.nav a.acct-link{display:none!important}.nav a{font-size:13.5px}.top .brand span{font-size:20px}.top .brand img{height:22px}}
/* phones (Matt, 1 Nov 2026: "quite cramped"): logo, Advertise and the menu on the top line; My Jobs + the saved-jobs heart on a slim line under it */
.acct-bar .ab-l{display:none}
@media (max-width:480px){
  .top .bar{flex-wrap:wrap!important;row-gap:6px}
  .top .bar .brand{order:1}
  .top .bar .bar-sell{order:2;margin-left:auto!important}
  .top .bar .menu-btn{order:3}
  .top .bar::after{content:"";order:4;flex-basis:100%;height:0}
  .top .bar .acct-bar{order:5;margin-left:auto!important;width:auto;height:30px;padding:0 10px;gap:6px;font-size:13.5px;font-weight:700;text-decoration:none}
  .top .bar .acct-bar .ab-l{display:inline}.top .bar .acct-bar svg{width:17px;height:17px}
  .top .bar .sl-link-bar{order:6;margin-left:0!important;min-height:30px;border-color:rgba(255,255,255,.35)!important;padding:0 9px!important}
  .top .bar .nav{order:7}
  .top .bar.has-sl{gap:8px}.top .bar.has-sl .brand span,.top .bar .brand span{font-size:16px}.top .bar.has-sl .brand img,.top .bar .brand img{width:28px}
  .top .bar .bar-sell{padding:0 10px;font-size:13px;min-height:34px}
}
@media (max-width:350px){.top .bar .brand span,.top .bar.has-sl .brand span{font-size:14px}.top .bar .brand img,.top .bar.has-sl .brand img{width:24px}}
@media (max-width:480px){.top .bar .acct-bar,.top .bar.has-sl .acct-bar{width:auto!important;white-space:nowrap}}
/* saved CV on the apply form (Matt, 1 Nov 2026) */
.cv-saved{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line,#CBD5DA);border-radius:10px;padding:12px 14px;color:var(--brand)}
.cv-saved[hidden]{display:none}.cv-saved svg{flex:none}
.cv-saved .cv-t{flex:1;min-width:0}.cv-saved .cv-t b{display:block;color:var(--ink);font-size:15.5px;overflow-wrap:anywhere}.cv-saved .cv-t small{display:block;color:var(--muted);font-size:13px;margin-top:2px}
.cv-swap{background:none;border:0;padding:4px 0;color:var(--brand);font:inherit;font-size:14px;font-weight:700;text-decoration:underline;cursor:pointer;white-space:nowrap}
@media (max-width:520px){.cv-saved{flex-wrap:wrap}.cv-saved .cv-swap{flex-basis:100%;text-align:left}}
.mj-wk{flex-basis:100%;display:flex;gap:9px;align-items:flex-start;font-size:15px;cursor:pointer;margin-top:4px}.mj-wk input{margin-top:4px;width:17px;height:17px;flex:none}

/* My Jobs, signed in, given some polish (Matt, 1 Nov 2026) */
.mj-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.mj-stats a{display:flex;align-items:baseline;gap:7px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:10px 16px;color:#fff;text-decoration:none;transition:background .15s}
.mj-stats a:hover{background:rgba(255,255,255,.16)}
.mj-stats b{font-family:var(--head);font-size:24px;line-height:1;color:var(--gold-light,var(--gold))}.mj-stats span{font-size:14px;color:var(--on-dark,#d7e4e8)}
.mj-weekly{display:flex;align-items:center;gap:20px;background:linear-gradient(135deg,var(--brand-deep) 0%,var(--brand) 100%);color:#fff;border-radius:16px;padding:22px 24px;margin:0 0 20px;box-shadow:0 10px 26px rgba(0,0,0,.12);position:relative;overflow:hidden}
.mj-weekly::after{content:"";position:absolute;right:-60px;top:-60px;width:200px;height:200px;border-radius:50%;background:rgba(255,255,255,.06)}
.mj-wk-ic{flex:none;stroke:var(--gold-light,var(--gold))}
.mj-wk-t{flex:1;min-width:0}.mj-wk-t h2{margin:2px 0 6px;font-size:24px;color:#fff}.mj-wk-t p{margin:0;color:var(--on-dark,#d7e4e8)}
.mj-eb{font-size:12px!important;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--gold-light,var(--gold))!important}
.mj-weekly form{flex:none;display:flex;flex-direction:column;align-items:center;gap:6px;position:relative;z-index:1}.mj-weekly form small{color:var(--on-dark,#d7e4e8);font-size:12.5px}
@media (max-width:700px){.mj-weekly{flex-wrap:wrap}.mj-weekly form{flex-basis:100%;align-items:stretch}.mj-weekly form small{text-align:center}}
.mj-weekly-on{display:flex;flex-wrap:wrap;align-items:center;gap:8px;background:#ECF7EF;border:1px solid #CDE9D5;color:#1E6B3A;border-radius:12px;padding:12px 16px;margin:0 0 20px}
.mj-weekly-on a{margin-left:auto;font-weight:700;color:var(--brand)}
.mj-card{border-radius:16px;box-shadow:0 2px 10px rgba(0,0,0,.04)}
.mj-h{display:flex;align-items:center;gap:10px;margin:0 0 10px}.mj-h h2{margin:0!important}
.mj-hi{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:var(--tint,#E8F2F5);color:var(--brand);font-weight:800;font-size:16px;flex:none}
.mj-hi-heart{color:#e0566f;background:#FDECEF}
.mj-h .mj-n{margin-left:auto}
.mj-empty{color:var(--muted,#5B6B72)}
.mj-av{width:40px;height:40px;border-radius:10px;background:var(--tint,#E8F2F5);color:var(--brand);font-family:var(--head);font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex:none}
.mj-job{gap:12px}.mj-job>div{flex:1 1 220px}
a.mj-saved{text-decoration:none;color:inherit;border-radius:10px;padding:12px 8px;margin:0 -8px;transition:background .15s}
a.mj-saved:hover{background:var(--tint,#F2F7F9)}a.mj-saved b{display:block;color:var(--brand)}a.mj-saved .lg{flex:none}
.mj-pay{font-weight:700;color:var(--ink);white-space:nowrap;font-size:14.5px}
.mj-more{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:14px 0 0!important}
.mj-sel{border-radius:20px;padding:0 14px;min-height:36px;font-size:14px;cursor:pointer}
.mj-s-applied{background:var(--tint,#E8F2F5);border-color:transparent;color:var(--brand)}
.mj-danger-t{color:#B42318!important}
.mj-app{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;border:1px dashed var(--line,#CBD5DA);border-radius:16px;padding:18px 22px;margin:0 0 18px}
.mj-app h2{margin:0 0 4px;font-size:19px}.mj-app p{margin:0;color:var(--muted,#5B6B72);font-size:15px}
.mj-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:8px 2px;color:var(--muted,#5B6B72);font-size:14px}
.mj-foot details{flex-basis:100%}.mj-foot summary{cursor:pointer}
/* the Weekly tick on the sign-in form, made to stand out (Matt, 1 Nov 2026; never pre-ticked: PECR) */
.mj-wk{flex-basis:100%;display:flex;gap:12px;align-items:flex-start;margin-top:8px!important;padding:14px 16px;border:2px solid var(--gold-light,var(--gold));background:#FFFBEA;border-radius:12px;cursor:pointer;font-size:15px;line-height:1.45;color:var(--ink)}
.mj-wk:hover{border-color:var(--gold)}.mj-wk:has(input:checked){background:#FFF4C9;border-color:var(--gold)}
.mj-wk input{width:22px;height:22px;margin-top:1px;flex:none;accent-color:var(--brand)}
.mj-wk svg{flex:none;color:var(--brand);margin-top:-1px}
.mj-wk strong{font-size:16px;color:var(--brand)}.mj-wk em{font-style:normal;font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;background:var(--gold);color:var(--brand-deep);border-radius:6px;padding:2px 7px;margin-left:6px;vertical-align:2px}
/* My Jobs: after "Offer" / "Not this time" (Matt, 1 Nov 2026) */
.mj-offer{display:flex;flex-wrap:wrap;align-items:center;gap:12px;background:#FFFBEA;border:1px solid var(--gold-light,var(--gold));border-radius:12px;padding:12px 14px;margin:0 0 12px 52px;font-size:14.5px}
.mj-offer>span{font-size:22px}.mj-offer>div{flex:1 1 260px}.mj-offer b{color:var(--brand)}
.mj-sim{margin:0 0 12px 52px;padding:10px 14px;background:var(--tint,#F2F7F9);border-radius:12px}
.mj-sim p{margin:0 0 6px!important;font-size:13.5px;font-weight:700;color:var(--muted,#5B6B72)}
.mj-sim a{display:block;padding:6px 0;text-decoration:none;border-top:1px solid rgba(0,0,0,.06)}.mj-sim a:first-of-type{border-top:0}
.mj-sim b{display:block;color:var(--brand);font-size:14.5px}.mj-sim span{font-size:13px;color:var(--muted,#5B6B72)}
@media (max-width:600px){.mj-offer,.mj-sim{margin-left:0}}
.mj-job>.lg{flex:none;border-radius:10px}.mj-job>span.lg.mono{display:flex!important;align-items:center;justify-content:center;font-size:15px!important;color:var(--brand)!important;margin:0}
/* My Jobs extras (1 Nov 2026): interview + notes, closing pill, follow, notifications */
.mj-iv,.mj-close{display:inline-block;margin-top:5px;font-style:normal;font-size:12.5px;font-weight:700;border-radius:20px;padding:2px 10px}
.mj-iv{background:#FBF1C7;color:#6B5300}.mj-iv-past{background:#EEF2F4;color:#5B6B72}
.mj-close{background:#FDE8E4;color:#A13A22}
.mj-notes{margin:0 0 12px 52px;font-size:14px}
.mj-notes summary{cursor:pointer;color:var(--brand);font-weight:700;list-style:none;display:inline-block}
.mj-notes summary::-webkit-details-marker{display:none}.mj-notes summary::before{content:"+ "}.mj-notes[open] summary::before{content:"− "}
.mj-notes form{margin-top:10px;padding:14px;background:var(--tint,#F2F7F9);border-radius:12px}
.mj-notes label{display:block;font-weight:700;font-size:13px;margin-bottom:10px}.mj-notes label small{font-weight:400;color:var(--muted,#5B6B72)}
.mj-notes input,.mj-notes textarea{display:block;width:100%;margin-top:4px;font:inherit;font-weight:400;padding:8px 10px;border:1px solid var(--line,#D5E0E4);border-radius:8px;background:#fff;box-sizing:border-box}
.mj-iv-row{display:flex;gap:12px;flex-wrap:wrap}.mj-iv-row label{flex:1 1 150px}
.mj-iv-act{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.mj-nt-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:12px 0;border-top:1px solid var(--line,#E2EAED)}
.mj-nt-row>div:first-child{flex:1 1 280px}.mj-nt-row b{display:block}.mj-nt-row span{display:block;font-size:14px;color:var(--muted,#5B6B72)}
.mj-nt-btns{display:flex;gap:8px;flex-wrap:wrap}
.emp-follow{display:contents}.emp-follow button{cursor:pointer;font-family:inherit;background:transparent}@media (max-width:640px){.emp-follow button{flex:1;justify-content:center}}.emp-follow .is-on{background:rgba(255,255,255,.18)}
@media (max-width:600px){.mj-notes{margin-left:0}}

/* Logo strips you can swipe (Matt, 1 Nov 2026): the footer script moves them by scrolling instead of the CSS animation, so a finger or trackpad can drag them too */
.marquee.js-swipe,.sell-marquee.js-swipe{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;cursor:grab}
.marquee.js-swipe::-webkit-scrollbar,.sell-marquee.js-swipe::-webkit-scrollbar{display:none}
.js-swipe .track,.js-swipe .sell-track{animation:none!important;transform:none!important}
.js-swipe.dragging{cursor:grabbing}.js-swipe.dragging a{pointer-events:none}
/* My Jobs sign-in codes + passwords (1 Nov 2026) */
.mj-code{border:2px solid var(--gold,#D8AD02)}
.mj-codein{font-family:Consolas,Menlo,monospace;font-size:24px!important;letter-spacing:.3em;max-width:220px;text-align:center}
.mj-pw{margin-top:14px;font-size:14px}.mj-pw summary{cursor:pointer;color:var(--brand);font-weight:700}
.mj-pw form{margin-top:10px}
.mj-row input[type=password],.mj-row .mj-codein{flex:1 1 200px;min-height:46px;padding:0 12px;border:1px solid var(--line,#CBD5DA);border-radius:8px;font:inherit}

/* ★ Follow on employer cards (Employers A-Z, 1 Nov 2026) */
.fol-wrap{position:relative;display:flex;min-width:0}.fol-wrap>a{flex:1;min-width:0}
.fol-btn{position:absolute;top:8px;right:8px;z-index:2;width:34px;height:34px;border-radius:50%;border:1px solid var(--line,#D5E0E4);background:#fff;color:#9AA9B0;font-size:17px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .15s,transform .15s}
.fol-btn:hover{color:var(--brand);transform:scale(1.08)}.fol-btn.is-on{color:var(--gold,#D8AD02);border-color:var(--gold,#D8AD02);background:#FFFBEA}
.fol-btn.pop{animation:folpop .35s}@keyframes folpop{50%{transform:scale(1.3)}}
.mj-nt-list{margin:0 0 10px;padding-left:20px;font-size:14.5px;line-height:1.6}.mj-nt-list b{color:var(--ink,#1A2B33)}
/* My Jobs: new jobs for you, recently viewed, pay check (1 Nov 2026) */
.mj-job[data-sl]{position:relative;padding-right:56px}.mj-job[data-sl] .sl-heart{top:50%;transform:translateY(-50%);right:8px}
.mj-newb{display:inline-block;margin-top:4px;font-style:normal;font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:var(--gold,#D8AD02);color:var(--brand-deep,#022F3F);border-radius:20px;padding:1px 8px}
.mj-n-new{background:#FBF1C7;color:#6B5300;font-weight:700}
.mj-gone{opacity:.65}
.mj-payf select{flex:1 1 240px;min-height:44px;padding:0 10px;border:1px solid var(--line,#CBD5DA);border-radius:8px;font:inherit;background:#fff}
.mj-ldn{display:flex;gap:6px;align-items:center;font-weight:600;font-size:14.5px;cursor:pointer}
.mj-paygrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}
.mj-paygrid div{padding:12px 14px;background:var(--tint,#F2F7F9);border-radius:12px}.mj-paygrid span{display:block;font-size:13px;color:var(--muted,#5B6B72)}.mj-paygrid b{display:block;font-size:18px;margin-top:2px;color:var(--brand)}
@media (max-width:640px){.mj-paygrid{grid-template-columns:1fr}}
.mj-more-jobs summary{cursor:pointer;list-style:none;display:inline-block;margin:10px 0 2px;color:var(--brand);font-weight:700;font-size:14.5px}
.mj-more-jobs summary::-webkit-details-marker{display:none}.mj-more-jobs summary::after{content:" ▾"}.mj-more-jobs[open] summary::after{content:" ▴"}.mj-more-jobs .mm-c,.mj-more-jobs[open] .mm-o{display:none}.mj-more-jobs[open] .mm-c{display:inline}
/* Article topics + essential guides (1 Nov 2026) */
.ess-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:12px;margin-top:14px}
.ess{display:grid;grid-template-columns:38px 1fr;column-gap:14px;row-gap:2px;align-items:center;padding:14px 16px;text-decoration:none;color:var(--ink);border-left:4px solid var(--ac,#03526D)}
.ess .nw-ic{grid-row:1/3}.ess-t{font-weight:700;font-size:16px;line-height:1.3}.ess-m{font-size:13px;color:var(--muted)}
.ess:hover .ess-t{text-decoration:underline}
.ess-tag{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 8px;border-radius:999px;background:var(--brand);color:#fff;margin-right:8px;vertical-align:1px}
.topic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));gap:12px;margin-top:14px}
.topic-tile{display:grid;grid-template-columns:38px 1fr;column-gap:12px;row-gap:3px;padding:14px 16px;text-decoration:none;color:var(--ink)}
.topic-tile .nw-ic{grid-row:1/3}.topic-tile .tt{font-weight:700;font-size:16px;color:var(--ac,#03526D)}.topic-tile .tt .n{font-weight:600;font-size:12.5px;color:var(--muted);margin-left:4px}
.topic-tile .tb{font-size:13.5px;color:var(--muted);line-height:1.4}.topic-tile:hover .tt{text-decoration:underline}
.eb-link{color:inherit;text-decoration:none}.eb-link:hover{text-decoration:underline}
.keep-more{margin:14px 0 0;font-weight:700;font-size:14.5px}
.mj-job>.lg,.mj-job>span.lg.mono{width:56px!important;height:56px!important;min-width:56px}   /* letter tiles the same size as logos (1 Nov 2026) */

/* My Jobs saved-job marks + notes (1 Nov 2026) */
.mj-sv{border-top:1px solid var(--line,#E2EAED)}.mj-sv>.mj-job{border-top:0}.mj-sv .mj-svn{margin:-4px 0 10px 56px}
.mj-sv-no a.mj-saved{opacity:.6}
.mj-pref{display:inline-block;margin:5px 6px 0 0;font-style:normal;font-size:12.5px;font-weight:700;border-radius:20px;padding:2px 10px}
.mj-pref-interested{background:#E3F2E7;color:#1E6B3A}.mj-pref-notforme{background:#EEF1F2;color:#5B6B72}
.mj-pref-pick{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0 0 8px;font-size:14px}.mj-pref-pick label{display:inline-flex;align-items:center;gap:5px;font-weight:600}
@media(max-width:560px){.mj-sv .mj-svn{margin-left:0}}
a.mj-saved .mj-why{display:block;margin-top:4px;font-size:12.5px;color:var(--muted,#5B6B72);font-weight:600}   /* reasons on New jobs for you (1 Nov 2026) */
/* employer hiring facts (1 Nov 2026) */
.emp-facts{list-style:none;margin:-4px 0 16px;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.emp-facts li{background:var(--tint,#F2F7F9);border:1px solid var(--line,#E2EAED);border-radius:10px;padding:7px 12px;font-size:14px;display:flex;gap:6px;align-items:baseline}
.emp-facts li span{color:var(--muted,#5B6B72);font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.emp-facts li b{color:var(--ink,#1A2B33)}
/* career paths (1 Nov 2026) */
.cp-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.cp-chips a{background:rgba(255,255,255,.12);color:#fff;border-radius:20px;padding:6px 12px;font-size:14px;font-weight:600;text-decoration:none}
.cp-chips a:hover{background:rgba(255,255,255,.22)}
.cp-note{margin:0;color:var(--muted,#5B6B72);font-size:14.5px;max-width:820px}
.cp-path{padding:22px 24px;scroll-margin-top:90px}.cp-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:14px}.cp-head h2{margin:0;font-size:21px}
.cp-ladder{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:10px;counter-reset:cp}
.cp-rung{position:relative;background:var(--tint,#F2F7F9);border:1px solid var(--line,#E2EAED);border-radius:12px;padding:14px 12px 12px;display:flex;flex-direction:column;gap:4px}
.cp-rung:not(:last-child)::after{content:"→";position:absolute;right:-12px;top:50%;transform:translateY(-50%);color:var(--muted,#5B6B72);font-weight:700}
.cp-rung b{font-size:14.5px;line-height:1.3;color:var(--brand)}.cp-pay{font-weight:700;font-size:15px}.cp-n{font-size:13px;color:var(--muted,#5B6B72)}
.cp-chartered{border-color:var(--gold,#26B99A);box-shadow:0 0 0 2px rgba(212,176,124,.35) inset}
.cp-flag{position:absolute;top:-10px;left:10px;background:var(--gold,#26B99A);color:var(--brand-deep,#081C2C);font-size:11px;font-weight:800;letter-spacing:.04em;border-radius:10px;padding:1px 8px;text-transform:uppercase}
.cp-route{margin:14px 0 0;font-size:14.5px}
@media(max-width:900px){.cp-ladder{grid-template-columns:repeat(3,1fr);row-gap:18px}.cp-rung:nth-child(3n)::after{display:none}}
@media(max-width:520px){.cp-ladder{grid-template-columns:1fr 1fr}.cp-rung::after{display:none}}
/* My Jobs: your market (1 Nov 2026) */
.mj-payf select#mj-reg{min-height:42px;border:1px solid var(--line,#CBD5DA);border-radius:8px;padding:0 10px;font:inherit}
.mj-mkt{margin:16px 0 0;padding:14px 16px;border:1px solid var(--line,#E2EAED);border-radius:12px;background:#fff}
.mj-mkt-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.mj-mkt-grid div{display:flex;flex-direction:column}.mj-mkt-grid b{font-family:'Exo 2',sans-serif;font-size:24px;color:var(--brand)}.mj-mkt-grid span{font-size:13.5px;color:var(--muted,#5B6B72)}
.mj-tr{display:block;font-style:normal;font-weight:700;font-size:12.5px;margin-top:2px}.mj-tr-up{color:#1E6B3A}.mj-tr-down{color:#A13A22}.mj-tr-flat{color:var(--muted,#5B6B72)}
/* Career paths London switch (1 Nov 2026) */
.cp-switch{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;align-self:flex-start;font-size:14px;color:var(--muted,#5B6B72);font-weight:600}
.cp-switch button{border:1px solid var(--line,#E2EAED);background:#fff;color:var(--brand);border-radius:20px;padding:7px 14px;font:inherit;font-weight:700;cursor:pointer}
.cp-switch button[aria-pressed="true"]{background:var(--brand);border-color:var(--brand);color:#fff}
.cp-switch button:focus-visible{outline:3px solid var(--gold,#D99A00);outline-offset:2px}
/* Job page 'Helpful for this role' (1 Nov 2026) */
.job-guides ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.job-guides li+li{border-top:1px solid var(--line,#E2EAED)}
.job-guides a{display:block;padding:9px 18px 9px 0;font-size:14.5px;font-weight:600;line-height:1.35;text-decoration:none;position:relative}
.job-guides a::after{content:"→";position:absolute;right:0;top:9px;color:var(--muted,#5B6B72)}
.job-guides a:hover{text-decoration:underline}
/* Article Save for later (1 Nov 2026) */
.art-save .as-on{display:none}.art-save.is-on .as-on{display:inline}.art-save.is-on .as-off{display:none}.art-save.is-on{color:var(--gold-dark,#9A7400);font-weight:700}
/* Saved-job label picker as chips (1 Nov 2026: the radios were wrapping word by word) */
.mj-pref-pick{gap:8px}
.mj-pref-pick label{flex:0 0 auto;width:auto;margin:0;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid var(--line,#D5E0E4);border-radius:20px;padding:6px 12px;font-size:14px;line-height:1.2}
.mj-pref-pick input[type=radio]{width:auto;height:auto;margin:0;padding:0;flex:0 0 auto;accent-color:var(--brand)}
.mj-pref-pick label:has(input:checked){border-color:var(--brand);background:var(--tint,#F2F7F9);color:var(--brand)}
.mj-pref-pick label:focus-within{outline:2px solid var(--gold,#D99A00);outline-offset:2px}
/* phones, tidier second line (Matt, 2 Nov 2026: "still looks a mess"): My Jobs + the saved heart sit left, under the logo, on a slim strip
   with a hairline above, as quiet links rather than floating boxes */
@media (max-width:480px){
  .top .bar{row-gap:0!important;padding-bottom:10px;justify-content:flex-start!important}
  .top .bar::after{height:1px!important;background:rgba(255,255,255,.14);margin:12px 0 8px}
  .top .bar .acct-bar{margin-left:0!important;border:0!important;background:rgba(255,255,255,.08);height:32px;padding:0 12px;border-radius:16px;font-size:14px}
  .top .bar .sl-link-bar{margin-left:8px!important;border:0!important;background:rgba(255,255,255,.08);min-height:32px;border-radius:16px;padding:0 12px!important}
  .top .bar .acct-bar:hover,.top .bar .sl-link-bar:hover{background:rgba(255,255,255,.16)}
}
/* phones: bigger logo now the top line only holds logo + Advertise + menu (Matt, 2 Nov 2026); scales with the screen, 13-19px */
@media (max-width:480px){
  .top .bar .brand span,.top .bar.has-sl .brand span{font-size:clamp(13px,calc((100vw - 193px) / 12.8),19px)!important}
  .top .bar .brand img,.top .bar.has-sl .brand img{width:clamp(22px,calc((100vw - 193px) / 12.8 * 1.75),33px)!important;height:auto!important}
}
/* Spotlight advert: four looks (Matt, 2 Nov 2026; chosen in Monthly updates; mock-ups https://claude.ai/artifact/CGRtkss5ooKzVvqtCkndwo) */
.spot-tag{position:absolute;top:-13px;left:26px;background:var(--brand-deep,#023F55);color:var(--gold,#D8AD02);font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:5px 12px;box-shadow:0 0 0 2px #fff;z-index:1}
.plan-pop.spot-a .spot-tag{left:auto;right:26px}
.spot-corner{position:absolute;top:0;right:0;width:118px;height:118px;overflow:hidden;border-top-right-radius:inherit;pointer-events:none;z-index:1}
.spot-corner span{position:absolute;top:26px;right:-38px;width:170px;transform:rotate(45deg);background:var(--brand-deep,#023F55);color:var(--gold,#D8AD02);text-align:center;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:6px 0;box-shadow:inset 0 1px 0 var(--gold,#D8AD02),inset 0 -1px 0 var(--gold,#D8AD02)}
.spot-b .plan-h{padding-right:62px}
.spot-c{overflow:hidden;padding-top:0}
.spot-strip{margin:0 -26px 20px;padding:9px 16px;background:var(--brand-deep,#023F55);color:var(--gold,#D8AD02);text-align:center;font-size:12.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid var(--gold,#D8AD02)}
.spot-c .pop-tag{display:none}
.spot-stamp{flex:none;margin-left:auto;width:62px;height:62px;border-radius:50%;background:var(--brand-deep,#023F55);color:var(--gold,#D8AD02);display:inline-flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--head);font-weight:800;line-height:1;transform:rotate(-8deg);box-shadow:0 0 0 3px #fff,0 0 0 4px var(--gold,#D8AD02);align-self:center}
.spot-stamp b{font-size:19px}.spot-stamp i{font-style:normal;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase}
.spot-d .plan-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px}
.spot-line{margin:4px 0 0;font-size:13px;font-weight:800;color:var(--brand);letter-spacing:.04em;text-transform:uppercase}
@media (max-width:640px){.spot-strip{margin-left:-22px;margin-right:-22px}.spot-tag{left:22px}.plan-pop.spot-a .spot-tag{right:22px}}

/* Unfolded phones / small tablets (Matt, 2 Nov 2026): the open menu drops below the header bar instead of squeezing in beside it,
   without a second Advertise button (the bar already has one); footer = brand across the top, then the link columns side by side */
@media (max-width:900px){
  .top .bar:has(.nav.open){flex-wrap:wrap}
  .top .bar .nav.open{order:99;flex-basis:100%}
  .top .bar:has(.bar-sell) .nav a.btn-gold{display:none}
}
@media (min-width:640px) and (max-width:899px){
  .foot .cols{grid-template-columns:repeat(3,minmax(0,1fr))}
  .foot .cols>div:first-child{grid-column:1/-1}
}
@media (min-width:560px) and (max-width:639px){.foot .cols>div:first-child{grid-column:1/-1}}

/* Hiring Brief strip on the Advertise page (3 Nov 2026): the home page's Weekly strip look */
.wk-strip.os-wk{margin:22px 0 0;flex-wrap:wrap}
.wk-strip.os-wk .offers-msg{flex-basis:100%;margin:0;background:#E8F5EC;color:#1C5B32;border-radius:8px;padding:8px 12px;font-weight:700}
@media (max-width:1240px){.wk-strip.os-wk .wk-row input#os-e{flex:1 1 0;width:auto;min-width:0}}
@media (max-width:640px){.wk-strip.os-wk .wk-row input#os-e{flex:0 0 46px;width:100%}}
.wk-strip.os-wk{scroll-margin-top:110px}
/* hero text that stays on phones (3 Nov 2026: Hiring Brief, Why advertise) */
.hero .sub.keep{display:block}
/* /job-alerts main page (3 Nov 2026): one column like The Hiring Brief page; full form at the bottom */
.ap-one{display:grid;gap:24px;max-width:760px;padding-top:28px;padding-bottom:32px}
.top .wk-strip .hp{position:absolute!important;left:-9999px!important}
/* strip eyebrow wraps on narrow screens (3 Nov 2026: 'Free · for employers · twice a month' ran off the edge) */
@media (max-width:900px){.wk-strip .wk-eb{white-space:normal}}
.hero .sub.keep{text-wrap:pretty}

/* Faint grid on the dark surfaces (Matt, 4 Nov 2026), the same as the rate card, the Quarterly and the employer banners. Header + hero share
   one grid (fixed to the window on computers so the two blocks line up); white areas, cards and job lists stay plain. */
.top,.sell-strip,.sell-cta,.sell-partner,.wk-strip{background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:40px 40px}
@media (hover:hover) and (pointer:fine){.top{background-attachment:fixed}}
.pt-band{background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(135deg,#081C2C 0%,#102A43 70%,#1B3D5C 100%);background-size:40px 40px,40px 40px,auto}
/* 4 Nov 2026: no grid behind the open phone menu (its dividers sat a few px off the grid lines and read as a second, misaligned grid) */
.top:has(.nav.open){background-image:none}
/* Premium lounge (Matt, 4 Nov 2026): the Premium jobs page gets a deeper header, a faint gold grid, a gold rule and a strip of the
   employers advertising Premium now; its badge reads as a gold outline. Featured keeps the ordinary look. */
body:has(.tier-lounge) header.top,.tier-lounge{background-color:var(--brand-deep);background-image:linear-gradient(rgba(212,176,124,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(212,176,124,.08) 1px,transparent 1px);background-size:40px 40px}
.tier-lounge{border-bottom:4px solid var(--gold)}
body:has(.tier-lounge) header.top:has(.nav.open){background-image:none}
.tier-lounge .badge.b-gold{background:transparent;border:1px solid var(--gold);color:var(--gold-light);letter-spacing:.14em;padding:5px 12px}
.tier-lounge .page-h1{font-size:clamp(34px,5vw,54px);letter-spacing:-.5px}
.lounge-hirers{margin-top:22px}
.lounge-eyebrow{margin:0 0 10px;font-family:var(--head);font-weight:600;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#A9C2B5}
.lounge-logos{display:flex;flex-wrap:wrap;gap:12px}
.lounge-logos .lg,.lounge-logos .mono{width:72px;height:72px;border:0;border-radius:10px;box-shadow:0 0 0 2px rgba(212,176,124,.55)}
.lounge-logos .mono{background:#fff}
.lounge-logos .logo-link{display:block;border-radius:10px;transition:transform .15s}.lounge-logos .logo-link:hover{transform:translateY(-2px)}
body:has(.tier-lounge) .tier-prem .badge.b-premium{background:var(--brand-deep);color:var(--gold-light)}
body:has(.tier-lounge) .tier-job .lg,body:has(.tier-lounge) .tier-job .mono{width:96px;height:96px}
@media (max-width:640px){.lounge-logos{gap:8px}.lounge-logos .lg,.lounge-logos .mono{width:56px;height:56px}body:has(.tier-lounge) .tier-job .lg,body:has(.tier-lounge) .tier-job .mono{width:64px;height:64px}}
/* gold menu link to the Premium page */
.nav a.nav-prem{color:var(--gold-light)}.nav a.nav-prem:hover,.nav a.nav-prem[aria-current="page"]{color:#fff}
.hint-prem{display:flex;flex-wrap:wrap;gap:6px 16px;justify-content:space-between;align-items:center}.hint-prem a{color:var(--brand-deep);white-space:nowrap}
/* Two-row header (Matt, 4 Nov 2026: the one-row bar was crowded once Premium joined the menu): from 901px wide the logo, My Jobs
   (the phone account button, with its label) and Advertise sit on the top row; the menu has its own row under a faint line. */
@media (min-width:901px){
 .top .bar{flex-wrap:wrap!important;row-gap:0;padding-bottom:0}
 .top .bar .brand{order:1;flex:1 1 auto}
 .top .bar .acct-bar{display:inline-flex;align-items:center;gap:8px;order:2;margin-left:auto;height:44px;padding:0 14px;border-radius:8px;border:1px solid rgba(255,255,255,.35);color:#fff;text-decoration:none;font-weight:600;font-size:15px;width:auto}
 .top .bar .acct-bar .ab-l{display:inline}
 .top .bar .bar-sell{display:inline-flex;align-items:center;order:3;background:var(--gold);color:var(--brand-deep);font-weight:700;font-size:15px;text-decoration:none;border-radius:8px;padding:0 18px;min-height:44px}
 .top .bar .nav{order:4;flex:1 0 100%;justify-content:flex-start;gap:28px;margin-top:16px;border-top:1px solid rgba(255,255,255,.14);padding:2px 0}
 .top .bar .nav a{font-size:15px;padding:12px 0}
 .nav a.acct-link,.nav a.btn-gold{display:none!important}
 
 .top .brand span{font-size:26px!important}.top .brand img{height:30px!important}
}
/* Premium lounge logo strip: rectangular tiles like the LogoBooster strip */
.lounge-logos .lounge-tile{width:148px;min-height:84px;padding:8px;border:0;box-shadow:0 0 0 2px rgba(212,176,124,.55)}
.lounge-logos .lounge-tile img{height:64px}
.lounge-logos .lounge-tile .mono{width:auto;height:auto;box-shadow:none;background:none;font-size:20px}
@media (max-width:640px){.lounge-logos .lounge-tile{width:108px;min-height:64px;padding:6px}.lounge-logos .lounge-tile img{height:48px}}
/* 4 Nov 2026 (Matt): beside the list, the Top Job / Job of the Week stack starts level with the first job card (below the filter row: 44px + 14px gap) */
@media (min-width:1017px){.tier-side{margin-top:58px}}
/* 4 Nov 2026 (Matt: "too many now"): the Premium logo strip is always ONE row; logos that would wrap to a second row are left out (as many as fit the screen) */
.lounge-logos{max-height:80px;overflow:hidden;padding:2px;margin:-2px}
.lounge-logos .lounge-tile{width:132px;min-height:76px;height:76px}.lounge-logos .lounge-tile img{height:56px}
@media (max-width:640px){.lounge-logos{max-height:62px}.lounge-logos .lounge-tile{width:100px;min-height:58px;height:58px}.lounge-logos .lounge-tile img{height:42px}}
/* 4 Nov 2026 (Matt): on phones and tablets the Premium logo strip swipes sideways (no auto-scroll) so every logo can be seen; computers keep the still single row */
@media (max-width:900px){.lounge-logos{flex-wrap:nowrap;max-height:none;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent);padding-right:40px}.lounge-logos::-webkit-scrollbar{display:none}.lounge-logos .lounge-tile{flex:0 0 auto;scroll-snap-align:start}}
/* Premium panel (Matt, 4 Nov 2026: "the premium colour we now use", as the home Weekly strip and the Advertise Partner band): deep brand colour,
   faint grid, thin light-gold edge. .prem-panel for new boxes; the Premium page's Weekly box uses it. */
.prem-panel,body:has(.tier-lounge) .tier-side form.alerts{background-color:var(--brand-dark);background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:40px 40px;border:1px solid var(--gold-light);color:#fff}
.prem-panel h2,.prem-panel h3,body:has(.tier-lounge) .tier-side form.alerts h3{color:#fff}
.prem-panel .eyebrow,body:has(.tier-lounge) .tier-side form.alerts .eyebrow{color:var(--gold-light)}
.prem-panel label,body:has(.tier-lounge) .tier-side form.alerts label{color:var(--on-dark)}
.prem-panel input,body:has(.tier-lounge) .tier-side form.alerts input{border-color:transparent}
/* 4 Nov 2026 (Matt): the divider between the header rows is a deliberate 2px line (1px read as a stray grid line) */
@media (min-width:901px){.top .bar .nav{border-top:2px solid rgba(255,255,255,.16);margin-top:16px}}

/* My Jobs overhaul (Matt, 4 Nov 2026: "pimp it up, it's for the candidates"): full width, two columns on wide screens, richer hero */
.mj-hero{display:flex;align-items:center;gap:18px}
.mj-hero .page-h1{margin-bottom:4px}
.mj-avatar{flex:none;width:64px;height:64px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-family:var(--head);font-weight:700;font-size:24px;color:var(--brand-deep);background:linear-gradient(135deg,var(--gold-light,var(--gold)) 0%,var(--gold) 100%);box-shadow:0 0 0 4px rgba(255,255,255,.12),0 8px 22px rgba(0,0,0,.25)}
.mj-stats{display:grid;grid-template-columns:repeat(4,minmax(0,170px));gap:12px;margin-top:22px}
.mj-stats a{flex-direction:column;align-items:flex-start;gap:2px;padding:14px 16px;border-radius:14px;position:relative;overflow:hidden;backdrop-filter:blur(2px);transition:background .15s,transform .15s}
.mj-stats a:hover{transform:translateY(-2px)}
.mj-stats b{font-size:32px}
.mj-st-ic{position:absolute;right:12px;top:12px;font-size:16px!important;line-height:1;opacity:.55;color:#fff!important}
.mj-st-heart{color:#ff8fa3!important;opacity:.85}
@media (max-width:620px){.mj-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.mj-avatar{width:52px;height:52px;font-size:20px}.mj-hero{gap:14px}}

.mj-grid{display:block}
@media (min-width:1017px){
  .mj-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,400px);gap:24px;align-items:start}

}
.mj-side .mj-paygrid{grid-template-columns:1fr}
.mj-side .grid2{grid-template-columns:1fr}
.mj-side .mj-card{padding:18px 18px}
.mj-side .mj-card h2{font-size:19px}

.mj-card{transition:box-shadow .2s}
.mj-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.07)}
.mj-main .mj-hi{background:linear-gradient(135deg,var(--brand) 0%,var(--brand-deep) 100%);color:var(--gold-light,var(--gold))}
.mj-main .mj-hi-heart{background:linear-gradient(135deg,#f07a8f 0%,#d9475f 100%);color:#fff}
a.mj-saved{transition:background .15s,transform .15s}
a.mj-saved:hover{transform:translateX(3px)}

/* applications pipeline */
.mj-pipe{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:4px 0 10px}
.mj-pipe i{font-style:normal;color:var(--muted,#8A979D);font-size:18px}
.mj-pp{display:inline-flex;align-items:baseline;gap:6px;padding:7px 14px;border-radius:30px;font-size:14px;font-weight:700;background:var(--tint,#F2F7F9);color:var(--brand)}
.mj-pp b{font-family:var(--head);font-size:19px}
.mj-pp-i{background:#FBF1C7;color:#6B5300}
.mj-pp-o{background:#E3F2E7;color:#1E6B3A}

/* set-up checklist */
.mj-setup{position:relative;overflow:hidden;color:#fff;border:0!important;background-color:var(--brand-deep)!important;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px)!important;background-size:32px 32px!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 10px 26px rgba(0,0,0,.14)}
.mj-setup::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:var(--gold)}
.mj-setup h2{color:#fff}
.mj-su-sub{margin:2px 0 0!important;font-size:13.5px;color:var(--on-dark,#d7e4e8)}
.mj-ring{flex:none;width:52px;height:52px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:conic-gradient(var(--gold) calc(var(--p)*1%),rgba(255,255,255,.14) 0)}
.mj-ring span{width:40px;height:40px;border-radius:50%;background:var(--brand-deep);display:inline-flex;align-items:center;justify-content:center;font-family:var(--head);font-weight:700;font-size:14px;color:#fff}
.mj-su-list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}
.mj-su-list li>a,.mj-su-list li.done{display:flex;align-items:center;gap:12px;padding:9px 10px;border-radius:10px;text-decoration:none;color:#fff}
.mj-su-list li>a{background:rgba(255,255,255,.07);transition:background .15s}
.mj-su-list li>a:hover{background:rgba(255,255,255,.14)}
.mj-su-list b{display:block;font-size:15px;color:#fff}.mj-su-list small{display:block;font-size:12.5px;color:var(--on-dark,#d7e4e8)}
.mj-su-ic{flex:none;width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;border:2px solid var(--gold-light,var(--gold));color:var(--gold-light,var(--gold))}
.mj-su-list li.done{opacity:.7}.mj-su-list li.done .mj-su-ic{background:var(--gold);border-color:var(--gold);color:var(--brand-deep)}
.mj-su-go{margin-left:auto;color:var(--gold-light,var(--gold));font-weight:700}
@media (prefers-reduced-motion:reduce){.mj-stats a,.mj-card,a.mj-saved{transition:none}.mj-stats a:hover,a.mj-saved:hover{transform:none}}
/* My Jobs settings row (4 Nov 2026): notifications, CV, password, app side by side under the two columns */
.mj-main,.mj-side{min-width:0}
.mj-set-h{font-size:22px;margin:14px 0 14px}
.mj-settings{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:18px;align-items:start;margin-bottom:18px}
.mj-settings>section{margin:0;min-width:0}
.mj-settings .grid2{grid-template-columns:1fr 1fr}
@media (min-width:1017px){.mj-settings{grid-template-columns:repeat(3,minmax(0,1fr))}.mj-settings .mj-app{grid-column:1/-1}}
/* My Jobs v2 (Matt, 4 Nov 2026: "section-ise it, go crazy"): numbered sections, jump bar, wide pay panel, settings in tabs */
.mj-jump{position:sticky;top:0;z-index:20;display:flex;gap:6px;flex-wrap:wrap;margin:-8px 0 22px;padding:8px;border-radius:14px;background:rgba(255,255,255,.88);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 6px 20px rgba(0,0,0,.08);border:1px solid var(--line,#E2EAED)}
.mj-jump a{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:10px;font-weight:700;font-size:14.5px;color:var(--brand);text-decoration:none;transition:background .15s}
.mj-jump a:hover{background:var(--tint,#E1EEF2)}
.mj-jump a span{font-family:var(--head);font-size:12px;color:var(--brand-deep);background:var(--gold);border-radius:6px;padding:1px 6px}
.mj-sec{margin:0 0 44px}
.mj-sec-h{display:flex;align-items:center;gap:18px;margin:0 0 20px;padding:0 0 14px;border-bottom:2px solid var(--line,#E2EAED);position:relative;scroll-margin-top:80px}
.mj-sec-h::after{content:"";position:absolute;left:0;bottom:-2px;width:88px;height:2px;background:var(--gold)}
.mj-sec-n{font-family:var(--head);font-weight:700;font-size:56px;line-height:1;color:transparent;-webkit-text-stroke:2px var(--gold);letter-spacing:-1px;flex:none}
.mj-sec-h h2{margin:0;font-size:30px;line-height:1.15;color:var(--brand-deep)}
.mj-sec-h p{margin:4px 0 0;color:var(--muted,#5B6B72);font-size:15.5px}
@media (max-width:620px){.mj-sec-n{font-size:40px}.mj-sec-h h2{font-size:24px}.mj-sec-h{gap:12px}.mj-jump a{padding:7px 10px;font-size:13.5px}}
.mj-one{margin:0!important;font-size:14.5px}.mj-one a{font-weight:700;white-space:nowrap}
/* pay, full width: bands left, market right */
#pay.mj-card{padding:24px 26px}
@media (min-width:900px){
  #pay.mj-card{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);column-gap:30px;align-items:start}
  #pay.mj-card>*{grid-column:1/-1}
  #pay.mj-card>.mj-paygrid{grid-column:1;grid-row:4}
  #pay.mj-card>p.small{grid-column:1;grid-row:5}
  #pay.mj-card>.mj-mkt{grid-column:2;grid-row:4/span 2;margin-top:14px}
  #pay.mj-card>.mj-payf{max-width:640px}
}
#pay .mj-paygrid div{background:linear-gradient(160deg,var(--tint,#E1EEF2) 0%,#fff 140%);border:1px solid rgba(0,0,0,.04)}
#pay .mj-paygrid b{font-family:var(--head);font-size:20px}
#pay .mj-mkt{background-color:var(--brand-deep);background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:32px 32px;border:0;color:#fff;box-shadow:inset 0 3px 0 var(--gold)}
#pay .mj-mkt .eyebrow{color:var(--gold-light,var(--gold))}
#pay .mj-mkt-grid b{color:#fff}#pay .mj-mkt-grid span,#pay .mj-mkt p.small{color:var(--on-dark,#d7e4e8)}
#pay .mj-mkt .mj-tr-up{color:#8FE0A6}#pay .mj-mkt .mj-tr-down{color:#FFB4A3}
.mj-pay-intro{margin:-2px 0 14px!important;font-size:15px}
/* settings tabs */
.mj-tabs{padding:0!important;overflow:hidden;border-radius:16px}
.mj-tablist{display:flex;gap:4px;padding:8px 8px 0;background:var(--tint,#E1EEF2);overflow-x:auto;scrollbar-width:none}
.mj-tablist::-webkit-scrollbar{display:none}
.mj-tablist button{flex:none;display:inline-flex;align-items:center;gap:8px;font:inherit;font-weight:700;font-size:15px;color:var(--brand);background:transparent;border:0;border-radius:12px 12px 0 0;padding:12px 18px;cursor:pointer;white-space:nowrap}
.mj-tablist button:hover{background:rgba(255,255,255,.55)}
.mj-tablist button[aria-selected=true]{background:#fff;color:var(--brand-deep);box-shadow:inset 0 3px 0 var(--gold)}
.mj-tabs-on .mj-settings{display:block;margin:0}
.mj-tabs-on .mj-settings>section{border:0!important;box-shadow:none!important;border-radius:0;margin:0!important;padding:24px 26px!important;max-width:760px}
.mj-tabs-on .mj-settings>section .mj-h{display:none}
.mj-tabs:not(.mj-tabs-on) .mj-settings{padding:18px}
#pay.mj-card>.mj-h{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}   /* the section heading above says it */
#pay .mj-paygrid b{font-size:17px;white-space:nowrap}
@media (min-width:900px) and (max-width:1180px){#pay .mj-paygrid{grid-template-columns:1fr}}
@media (max-width:620px){.mj-jump{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.mj-jump::-webkit-scrollbar{display:none}.mj-jump a{flex:none}}
/* pay box updating (4 Nov 2026) */
#pay.mj-loading{position:relative}
#pay.mj-loading>*{opacity:.35;transition:opacity .15s}
#pay.mj-loading::after{content:"Updating…";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--brand-deep);color:#fff;font-weight:700;padding:10px 18px;border-radius:30px;box-shadow:0 8px 22px rgba(0,0,0,.2)}
/* Shortlist heart on the top row from 901px (Matt, 4 Nov 2026: in the menu row it showed as a tall narrow box) */
@media (min-width:901px){
  .nav .sl-link-nav{display:none!important}
  .top .bar .sl-link-bar:not([hidden]){display:inline-flex!important;align-items:center;gap:7px;order:2;margin-left:auto!important;height:44px;min-height:44px;padding:0 14px!important;border-radius:8px;border:1px solid rgba(255,255,255,.35)!important;background:transparent;font-size:15px;font-weight:600}
  .top .bar .sl-link-bar:not([hidden])~.acct-bar,.top .bar:has(.sl-link-bar:not([hidden])) .acct-bar{margin-left:0!important}
}
/* My Jobs signed out (Matt, 4 Nov 2026: "give it some treatment"): sign-in on the left, an example + what you get on the right */
.mj-out{display:block}
@media (min-width:1017px){.mj-out{display:grid;grid-template-columns:minmax(0,460px) minmax(0,1fr);gap:40px;align-items:start}.mj-out-l{position:sticky;top:16px}}
.mj-out-l .mj-card{position:relative;overflow:hidden;box-shadow:0 14px 34px rgba(0,0,0,.08)}
.mj-out-l .mj-card::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--gold)}
.mj-out-l .mj-card h2{font-size:24px}
.mj-out-l .mj-row input[type=email]{min-height:50px}
.mj-out-l .mj-row .btn-gold{min-height:50px}
.mj-trust{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--muted,#5B6B72);margin:4px 4px 24px;line-height:1.5}
.mj-out-h{font-size:26px;margin:26px 0 14px;color:var(--brand-deep)}
.mj-out .mj-why{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.mj-out .mj-why div{background:#fff;border:1px solid var(--line,#E2EAED);border-radius:14px;padding:16px;transition:transform .15s,box-shadow .15s}
.mj-out .mj-why div:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.07)}
.mj-out .mj-why b{color:var(--brand-deep);font-size:15.5px}
/* the example dashboard */
.mj-peek{position:relative;border-radius:18px;padding:22px;color:#fff;background-color:var(--brand-deep);background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:32px 32px;box-shadow:inset 0 3px 0 var(--gold),0 18px 40px rgba(0,0,0,.18);overflow:hidden}
.mj-peek::after{content:"";position:absolute;right:-70px;top:-70px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.10),transparent 70%)}
.mj-peek-tag{position:absolute;right:16px;top:16px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);border-radius:20px;padding:3px 10px}
.mj-peek-hi{display:flex;align-items:center;gap:12px}
.mj-peek-hi .mj-avatar{width:46px;height:46px;font-size:17px}
.mj-peek-hi b{display:block;font-family:var(--head);font-size:20px}.mj-peek-hi small{color:var(--on-dark,#d7e4e8);font-size:13px}
.mj-peek-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:16px 0 12px}
.mj-peek-tiles div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:10px 12px}
.mj-peek-tiles b{display:block;font-family:var(--head);font-size:26px;line-height:1;color:var(--gold-light,var(--gold))}.mj-peek-tiles span{font-size:12.5px;color:var(--on-dark,#d7e4e8)}
.mj-peek-pipe{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0 0 12px;font-size:12.5px;font-weight:700}
.mj-peek-pipe span{background:rgba(255,255,255,.12);border-radius:20px;padding:4px 10px}.mj-peek-pipe .pi{background:#FBF1C7;color:#6B5300}.mj-peek-pipe .po{background:#E3F2E7;color:#1E6B3A}
.mj-peek-pipe i{font-style:normal;opacity:.6}
.mj-peek-row{display:flex;align-items:center;gap:12px;background:#fff;color:var(--ink,#1A2B33);border-radius:12px;padding:10px 12px;margin-top:8px}
.mj-peek-row b{display:block;color:var(--brand);font-size:14.5px}.mj-peek-row small{font-size:12.5px;color:var(--muted,#5B6B72)}
.mj-peek-row em{margin-left:auto;font-style:normal}
.mj-peek-lg{flex:none;width:34px;height:34px;border-radius:8px;background:linear-gradient(135deg,var(--tint,#E1EEF2),#c9dde4)}
@media (max-width:520px){.mj-peek-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:1016px){.mj-out-r{margin-top:8px}}
.mj-trust{display:block}.mj-trust>span{margin-right:6px}

/* ===== My Jobs, app layout (Matt, 4 Nov 2026: canvas "My Jobs, app layout"): account panel + menu on the left, one section at a time ===== */
.mj-wide:has(.mja){padding-top:32px!important}
.mja{display:flex;flex-wrap:wrap;gap:28px;align-items:flex-start}
.mja-side{flex:1 1 280px;max-width:310px;display:flex;flex-direction:column;gap:14px}
.mja-main{flex:999 1 600px;min-width:0}
@media (min-width:1017px){.mja-side{position:sticky;top:16px}}
.mja-me{border-radius:18px;padding:20px;color:#fff;background-color:var(--brand-deep);background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:32px 32px;box-shadow:inset 0 3px 0 var(--gold),0 16px 36px rgba(0,0,0,.16);display:flex;flex-direction:column;gap:16px}
.mja-who{display:flex;align-items:center;gap:12px;min-width:0}
.mja-who .mj-avatar{width:52px;height:52px;font-size:19px;box-shadow:none}
.mja-who>div{min-width:0}
.mja-who b{display:block;font-family:var(--head);font-weight:700;font-size:19px;line-height:1.2}
.mja-who small{display:block;font-size:13px;color:var(--on-dark,#d7e4e8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mja-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.mja-tiles a{display:block;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:10px 12px;color:#fff;text-decoration:none;transition:background .15s}
.mja-tiles a:hover{background:rgba(255,255,255,.15)}
.mja-tiles b{display:block;font-family:var(--head);font-weight:700;font-size:26px;line-height:1;color:var(--gold-light,var(--gold))}
.mja-tiles span{font-size:12.5px;color:var(--on-dark,#d7e4e8)}
.mja-menu{background:#fff;border-radius:16px;padding:8px;box-shadow:0 2px 10px rgba(0,0,0,.04);display:flex;flex-direction:column;gap:2px}
.mja-menu a{display:flex;align-items:center;gap:10px;min-height:46px;padding:0 14px;border-radius:10px;text-decoration:none;font-weight:700;font-size:15px;color:var(--brand)}
.mja-menu a:hover{background:var(--tint,#E1EEF2)}
.mja-menu a.on{background:#FFF4CC;color:var(--brand-deep);box-shadow:inset 3px 0 0 var(--gold)}
.mja-menu a b{margin-left:auto;font-size:13px;color:var(--muted,#5B6B72)}
.mja-menu a b.mja-new{background:var(--gold);color:var(--brand-deep);border-radius:20px;padding:1px 8px;font-size:12px}
.mja-setup{display:flex;align-items:center;gap:14px;background:#fff;border-radius:16px;padding:14px 16px;box-shadow:0 2px 10px rgba(0,0,0,.04);font-size:14px;line-height:1.4}
.mja-setup .mj-ring{width:48px;height:48px;background:conic-gradient(var(--gold) calc(var(--p)*1%),var(--tint,#E1EEF2) 0)}
.mja-setup .mj-ring span{width:36px;height:36px;background:#fff;color:var(--brand-deep);font-size:13px}
.mja-setup b{display:block;color:var(--brand-deep)}.mja-setup a{font-weight:700}
/* sections */
.mja-p{display:flex;flex-direction:column;gap:16px;margin-bottom:34px}
.mja-on .mja-p{margin-bottom:0}
.mja-head{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap}
.mja-head h1{margin:0;font-family:var(--head);font-weight:700;font-size:32px;line-height:1.15;color:var(--brand-deep)}
.mja-head p{margin:4px 0 0;color:var(--muted,#5B6B72);font-size:15.5px}
.mja-act{margin-left:auto;font-weight:700;font-size:14.5px}
.mja-p>.mj-card,.mja-set>section{margin:0!important}
.mja-p .mj-card{padding:6px 20px 16px;border-radius:16px}
#foryou>.mj-h,#applied>.mj-h,#saved>.mj-h{display:none}
#foryou,#applied,#saved{padding-top:4px}
.mja .mj-weekly-on{display:none}
.mja .mj-weekly{margin:0}
.mja-alerts{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.mja-al{display:block;border-radius:14px;padding:13px 16px;text-decoration:none;color:var(--ink,#1A2B33);border:1px solid;font-size:14.5px;line-height:1.4;transition:transform .15s}
.mja-al:hover{transform:translateY(-2px)}
.mja-al b{display:block}.mja-al span{color:#33454D}
.mja-al-warn{background:#FFF8E1;border-color:#F1D58A}.mja-al-warn b{color:#6B5300}
.mja-al-ok{background:#E3F2E7;border-color:#A9D8B6}.mja-al-ok b{color:#1E6B3A}
.mja-al-info{background:var(--tint,#E1EEF2);border-color:#C6DCE4}.mja-al-info b{color:var(--brand-deep)}
.mja-al-new{background:#fff;border-color:var(--gold)}.mja-al-new b{color:var(--brand-deep)}
.mja-p a.mj-saved{padding:14px 10px;margin:0 -10px}
.mja-p .mj-job{padding:14px 0}
.mja-p .mj-job>.lg,.mja-p .mj-job>span.lg.mono{border:1px solid var(--line,#E2EAED)}
.mja-p .mj-pay{font-size:15px}
.mja-set{display:flex;flex-direction:column;gap:16px}
.mja-set .mj-card{padding:20px 22px}
.mja-set .mj-app{border-style:solid;background:#fff}
.mja-set .mj-foot{padding:4px 2px}
.mja-set .grid2{grid-template-columns:1fr 1fr}
/* phones and tablets: account panel on top, the menu becomes a swipeable row */
@media (max-width:1016px){
  .mja{gap:18px}
  .mja-side{max-width:none;flex-basis:100%}
  .mja-me{flex-direction:row;flex-wrap:wrap;align-items:center;padding:16px}
  .mja-who{flex:1 1 220px}
  .mja-tiles{flex:1 1 320px;grid-template-columns:repeat(4,minmax(0,1fr))}
  .mja-tiles a{padding:8px 10px}.mja-tiles b{font-size:22px}
  .mja-menu{flex-direction:row;overflow-x:auto;scrollbar-width:none;padding:6px;position:sticky;top:0;z-index:15}
  .mja-menu::-webkit-scrollbar{display:none}
  .mja-menu a{flex:none;min-height:42px;padding:0 12px;font-size:14px}
  .mja-menu a.on{box-shadow:inset 0 -3px 0 var(--gold)}
  .mja-menu a b{margin-left:4px}
  .mja-head h1{font-size:26px}
  .mja-main{flex-basis:100%}
}
@media (max-width:520px){.mja-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.mja-set .grid2{grid-template-columns:1fr}.mja-act{margin-left:0}}
@media (max-width:1016px){.mja-side,.mja-side>*{min-width:0;max-width:100%}.mja-side{width:100%}}
@media (max-width:520px){.mja-me{flex-direction:column;align-items:stretch}.mja-who,.mja-tiles{flex:none}.mja-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}.mja-tiles span{font-size:11.5px}}
@media (max-width:520px){.mja-tiles{gap:6px}.mja-tiles a{padding:8px}.mja-tiles span{font-size:11px;overflow-wrap:normal;word-break:normal;white-space:nowrap}}
/* My Jobs Settings as one list (Matt, 4 Nov 2026: as the mock-up): a row per setting, state underneath, action on the right; forms open in place */
.mja-rows{padding:0!important;border-radius:16px;overflow:hidden}
.mja-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:18px 22px;margin:0;border-top:1px solid var(--line,#E2EAED)}
.mja-rows>.mja-row:first-child{border-top:0}
.mja-rt{flex:1 1 300px;min-width:0}
.mja-rt b{display:block;font-size:16px;color:var(--ink,#1A2B33)}.mja-rt b small{font-weight:400;font-size:13px;color:var(--muted,#5B6B72)}
.mja-rt span{display:block;font-size:14px;color:var(--muted,#5B6B72);margin-top:2px;overflow-wrap:anywhere}
.mja-ra{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-left:auto}
.mja-ra form{margin:0}
.mja-ra a,.mja-lnk{background:none;border:0;padding:0;font:inherit;font-weight:700;font-size:15px;color:var(--brand);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.mja-ra a:hover,.mja-lnk:hover{color:var(--brand-deep)}
.mja-det{display:block}
.mja-det>summary{display:flex;align-items:center;gap:16px;flex-wrap:wrap;list-style:none;cursor:pointer}
.mja-det>summary::-webkit-details-marker{display:none}
.mja-det[open]>summary .mja-lnk{visibility:hidden}
.mja-det[open]{background:#FAFCFD}
.mja-body{padding:16px 0 4px;max-width:720px}
.mja-body .mj-row input{min-height:46px}
.mja-set .mj-foot{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;padding:4px 2px}
.mja-set .mj-foot .btn-line{background:none!important;border:0!important;padding:0!important;min-height:0!important;color:var(--brand)!important;font-weight:600;text-decoration:underline;text-underline-offset:3px;box-shadow:none!important}
.mja-set .mj-foot details{flex-basis:auto}.mja-set .mj-foot summary{color:#B42318;font-weight:600;text-decoration:underline;text-underline-offset:3px;list-style:none}
.mja-set .mj-foot details[open]{flex-basis:100%}
.mja-set .mj-foot .mj-danger{color:#B42318!important}
@media (max-width:620px){.mja-row{padding:16px}.mja-ra{margin-left:0}}

/* Pay & market tidy (Matt, 4 Nov 2026: tiles overflowed; offer sat above the bands): bands = one list, label left, figure right; offer last */
#pay .mj-paygrid{grid-template-columns:1fr!important;gap:8px}
#pay .mj-paygrid div{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;column-gap:14px;row-gap:2px;padding:12px 16px}
#pay .mj-paygrid span{display:inline;font-size:14px;font-weight:700;color:var(--ink,#1A2B33)}
#pay .mj-paygrid b{display:inline;margin:0;font-size:18px;white-space:nowrap}
@media (min-width:900px){#pay.mj-card>.mj-offer{grid-row:6;grid-column:1/-1}}
#pay .mj-offer{margin-left:0}
.mja-appbtn{white-space:nowrap}

/* My Jobs pay: London / Outside London switch (4 Nov 2026) */
.mj-ldn{display:inline-flex;border:1px solid var(--line,#D5E1E5);border-radius:10px;overflow:hidden;background:#fff;flex:none}
.mj-ldn label{margin:0;cursor:pointer}
.mj-ldn input{position:absolute;opacity:0;width:1px;height:1px}
.mj-ldn span{display:block;padding:9px 14px;font-weight:700;font-size:14px;color:var(--brand);white-space:nowrap}
.mj-ldn input:checked+span{background:var(--brand-deep);color:#fff}
.mj-ldn input:focus-visible+span{outline:2px solid var(--gold);outline-offset:-2px}

/* My Jobs (Matt, 4 Nov 2026): section icons the same size as the logo tiles below them, so they line up in one column */
.mja .mj-h .mj-hi{width:56px;height:56px;border-radius:10px;font-size:22px}
.mja .mj-h .mj-hi svg{width:24px;height:24px}
.mja .mj-h{align-items:center;gap:14px}

/* My Jobs alert boxes say what clicking does (Matt, 4 Nov 2026) */
.mja-al .mja-al-go{display:inline-block;margin-top:8px;font-style:normal;font-weight:800;font-size:14px;color:var(--brand);text-decoration:underline;text-underline-offset:3px}
.mja-al .mja-al-go span{color:inherit;text-decoration:none}
.mja-al:hover .mja-al-go{color:var(--brand-deep)}
/* Save for later as a pill, so it reads as a button before it's pressed too (Matt, 4 Nov 2026) */
.art-save.linkish{display:inline-flex;align-items:center;gap:4px;margin-left:4px;padding:5px 14px;border:1.5px solid var(--brand);border-radius:999px;background:#fff;color:var(--brand);font-weight:700;text-decoration:none;line-height:1.2;cursor:pointer;vertical-align:middle}
.art-save.linkish:hover{background:var(--tint)}
.art-save.linkish.is-on{border-color:var(--gold-dark,#9A7400);background:#FFF8E1;color:var(--gold-dark,#9A7400)}

/* My Jobs settings fold-outs: body text at the row's size, not the big page size; Remove password beside the button (Matt, 4 Nov 2026) */
.mja-det .mja-body .mj-empty{font-size:15px;line-height:1.5}
.mja-det .mja-body .mj-row{align-items:center}
.mj-pwdel{background:none;border:0;padding:4px 2px;margin-left:4px;font:inherit;font-size:14px;font-weight:600;color:#B42318;cursor:pointer;text-decoration:underline;white-space:nowrap}
.mja-det .mja-body input,.mja-det .mja-body select,.mja-det .mja-body label,.mja-det .mja-body p{font-size:15px}
/* icon square centred between the card top and the line under the heading (Matt, 4 Nov 2026) */
.mja-p .mj-card>.mj-h{padding-top:8px;margin-bottom:14px}

/* Salary guide Outside London / London switch (Matt, 4 Nov 2026) */
.sal-guide .sg-ldn{display:none}.sal-guide.is-ldn .sg-ldn{display:inline}.sal-guide.is-ldn .sg-uk{display:none}
.sal-guide td .sg-ldn{display:none}.sal-guide.is-ldn td .sg-ldn{display:block}.sal-guide td .sg-uk{display:block}.sal-guide.is-ldn td .sg-uk{display:none}
.sal-guide figcaption{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px}.sal-guide .sg-switch{margin-left:auto}

/* Which place? page for Weekly sign-ups (4 Nov 2026) */
.pick-opts{display:flex;flex-wrap:wrap;gap:10px}.pick-opts form{margin:0}
/* empty-state text sits evenly in its card (Matt, 4 Nov 2026) */
.mja-p .mj-card>.mj-empty:not(.mj-one){margin:12px 0 2px}
/* Header buttons all react the same on hover (Matt, 4 Nov 2026): My Jobs and the heart light up, Advertise deepens */
.top .bar .acct-bar,.top .bar .sl-link,.top .bar .bar-sell{transition:background-color .15s,border-color .15s,box-shadow .15s}
.top .bar .acct-bar:hover,.top .bar .acct-bar:focus-visible,.top .bar .sl-link:hover,.top .bar .sl-link:focus-visible{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.75)}
.top .bar .bar-sell:hover,.top .bar .bar-sell:focus-visible{background:var(--gold-dark,#B8860B);color:var(--brand-deep);box-shadow:0 0 0 3px rgba(255,255,255,.18)}
/* place boxes with region suggestions: no dropdown arrow (it only lists regions that match what's typed, so it looked broken); suggestions still appear as you type (Matt, 4 Nov 2026) */
input[list]::-webkit-calendar-picker-indicator{display:none!important;opacity:0}

/* Rollovers everywhere (Matt, 4 Nov 2026: site-wide hover audit, 269 pages): everything you can click now changes when you point at it */
.btn-on-dark{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.65)}
.btn-on-dark:hover,.btn-on-dark:focus-visible{background:rgba(255,255,255,.14);border-color:#fff;color:#fff}
.util .util-new:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
summary:not(.btn):not(.btn-line):hover{color:var(--brand-deep,var(--brand));text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.mja-det>summary:hover{text-decoration:none}
.share-btn:hover{background:var(--tint,#E8F2F5);border-color:var(--brand)}
.sl-heart.on:hover{background:#ffe3e8;border-color:#d9485f}
.sl-save:hover{text-decoration:underline;text-underline-offset:3px}
.cp-switch button:not([aria-pressed="true"]):hover{background:var(--tint,#E8F2F5);border-color:var(--brand)}
.cp-switch button[aria-pressed="true"]:hover{background:var(--brand-dark);border-color:var(--brand-dark)}
a.go:not(:has(.u)):hover{text-decoration:underline;text-underline-offset:3px}
.hr-all:hover{text-decoration:underline;text-underline-offset:3px}
a.dim:hover{color:var(--brand);text-decoration:underline}
.active-filters a.active:hover{background:var(--brand-dark)}
.art-save.linkish.is-on:hover{background:#FFEFC2}
.mja-set .mj-foot .btn-line:hover{color:var(--brand-deep,var(--brand))!important;text-decoration-thickness:2px}
.mja-set .mj-foot .mj-danger:hover{color:#8A1A12!important}
.mja-set .mj-foot summary:hover{color:#8A1A12}
/* add-on "+" is a marker, not a button: outline only, so the gold buttons below are the only things that look pressable (Matt, 4 Nov 2026) */
.addon .plus{background:transparent;border:2px solid var(--gold);color:var(--gold-dark,var(--gold));box-sizing:border-box}

/* Market reports page side panels (4 Nov 2026) */
.rh-panel{padding:20px 22px;display:flex;flex-direction:column;gap:10px}
.rh-ticks{list-style:none;margin:2px 0 0;padding:0;display:grid;gap:8px;font-size:15px;line-height:1.45}
.rh-ticks li{display:flex;gap:8px}.rh-ticks svg{flex:none;margin-top:3px;color:var(--brand)}
.rh-p{margin:0;font-size:15px;line-height:1.5}.rh-in{min-height:44px;padding:0 12px;border:1px solid var(--line,#CBD5DA);border-radius:8px;font:inherit;font-size:15px;width:100%;box-sizing:border-box}
.rh-panel .btn-gold{align-self:flex-start}.rh-alt{margin:2px 0 0;font-size:14px;color:var(--muted)}

/* The Weekly page as wide as The Hiring Brief page (Matt, 4 Nov 2026) */
.ap-one{max-width:960px}
/* Employer colour band: a thin stripe across the logo, with dark space above it (Matt, 4 Nov 2026); uploaded banners unchanged */
.emp-banner-auto{height:64px!important;margin-top:36px}
.emp-hero:has(.emp-banner-auto) .emp-logo{margin-top:-89px}
@media (max-width:640px){.emp-banner-auto{height:44px!important;margin-top:28px}.emp-hero:has(.emp-banner-auto) .emp-logo{margin-top:-64px}}
/* Rollovers, round 2 (4 Nov 2026) */
a.go:hover .u{text-decoration-thickness:2px}
.cookie-btns .btn-line:hover,.cookie-btns .btn-line:focus-visible{background:rgba(255,255,255,.14);border-color:#fff;color:#fff}
.util .util-sell:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.emp-follow .fol-star{color:var(--gold-light,var(--gold))}
/* Hiring Brief / Why advertise headings the same size as every other page heading (overnight review, 4 Nov 2026) */
.hero h1.page-h1{font-size:40px;line-height:1.1;margin:12px 0 0;max-width:none}
@media (max-width:640px){.hero h1.page-h1{font-size:28px}}

/* What we publish (5 Nov 2026) */
.wp-which{padding:22px 24px;margin-bottom:22px}
.wp-pick{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.wp-pick a{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid var(--line,#DDE6EA);border-radius:10px;text-decoration:none;color:var(--ink)}
.wp-pick a span{color:var(--brand);font-weight:700}.wp-pick a:hover{border-color:var(--brand);background:var(--tint,#E8F2F5)}
.wp-pub{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:18px 32px;padding:24px 26px;margin-bottom:16px;border-top:4px solid var(--gold);scroll-margin-top:110px}
.wp-what{margin:0;font-size:16px;line-height:1.55;color:var(--muted)}
.wp-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.wp-gets{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:15px;line-height:1.45;align-content:start}.wp-gets li{display:flex;gap:8px}
.wp-soon{border-top-color:var(--brand)}.wp-tag{display:inline-block;vertical-align:middle;margin-left:6px;padding:2px 10px;border-radius:999px;background:var(--brand);color:#fff;font-size:12px;font-weight:700;letter-spacing:.5px}
.wp-tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.wp-tool{display:flex;flex-direction:column;gap:6px;padding:18px;text-decoration:none;color:var(--ink)}.wp-tool b{color:var(--brand)}.wp-tool span{color:var(--muted);font-size:14.5px;line-height:1.45}
.wp-tool:hover{box-shadow:0 0 0 2px var(--brand)}
.wp-strip{margin:0;padding:12px 16px;border-radius:10px;background:var(--tint,#E8F2F5);font-size:15px}.wp-strip a{font-weight:700}
@media (max-width:760px){.wp-pub{grid-template-columns:1fr}}

/* Saved jobs page: gap between the "N saved jobs" row and the first card (Matt, 5 Nov 2026) */
.loc-list-head + .sl-list{margin-top:16px}

/* PFJ: one sister box with both sites (5 Nov 2026) */
.sister-band .sb-one{display:flex;align-items:center;flex-wrap:wrap;gap:12px 18px;padding:16px 20px;border:1px solid var(--line,#DDE6EA);border-radius:12px;background:var(--surface,#F4F7F8)}
.sister-band .sb-tiles{display:flex;flex-wrap:wrap;gap:8px}.sister-band .sb-tiles a{display:inline-flex;gap:7px;padding:6px 11px;text-decoration:none;border:0;border-radius:7px}.sister-band .sb-tiles a:hover{filter:brightness(1.15)}
.sister-band .sb-one .txt a{display:inline;padding:0;border:0;border-radius:0;background:none;color:inherit;text-decoration:underline;text-underline-offset:2px}.sister-band .sb-one .txt a:hover{color:var(--brand)}
/* What's new page (from PJ, 6 Nov 2026) */
.util .util-new{color:var(--gold-light);font-weight:700}
@media (max-width:640px){.util .util-new{font-size:13px}.util .util-new .new-tag{display:none}}
.wn-hero{display:grid;grid-template-columns:1fr 300px;gap:36px;align-items:center}
.wn-hero-img{width:100%;height:auto;border-radius:14px;box-shadow:0 14px 36px rgba(0,0,0,.28)}
.wn-cta{margin:20px 0 0;display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center}.wn-cta .go{color:var(--gold-light)}
.wn-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
.wn-feat{display:flex;flex-direction:column;gap:8px;text-decoration:none;color:inherit;padding:18px}
.wn-feat b{font-size:17px;color:var(--brand-deep,#023B4E)}.wn-feat .wn-d{font-size:14.5px;color:var(--muted);flex:1}.wn-feat .go{font-size:14.5px}
.wn-feat:hover b{text-decoration:underline}
.wn-log{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.wn-item{padding:20px 22px}.wn-item.has-img{display:grid;grid-template-columns:1fr 220px;gap:24px;align-items:start}
.wn-item time{font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.wn-item h3{margin:4px 0 8px;font-size:20px}.wn-item p{margin:0 0 10px}
.wn-item img{width:100%;height:auto;border-radius:10px}
@media (max-width:860px){.wn-hero{grid-template-columns:1fr}.wn-hero-img{max-width:300px}}
@media (max-width:640px){.wn-item.has-img{grid-template-columns:1fr}.wn-item img{max-width:300px}}
.util .util-new:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.wn-hero:not(:has(img)){grid-template-columns:1fr}
