Meta Muse Spark 1.3 – Careers
via Meta · Generated
- AIMAC Debt 4.51
- Cost $0.07
- Total Violations 14
- HTML Size 51 KB
- Em Dashes 18
Screenshot
View Live Page
Accessibility Issues Found
14 Serious
-
color-contrast serious 14 instances
Elements must meet minimum color contrast ratio thresholds
Example HTML
<span class="eyebrow">★ #1 Rated Career Platform 2026</span>
Artifacts
View Generated HTML
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Ascendra — Careers That Climb With You | Jobs, Career Advice & Professional Resources</title>
<meta name="description" content="Ascendra is your career growth platform: curated jobs, salary data, resume tips, interview prep, and networking tools to navigate the job market with confidence.">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600;9..144,700;9..144,800&family=Inter:wght@400;500;600;700;800&display=swap" rel="stylesheet">
<style>
:root{
--navy:#0F2342;
--navy-2:#162E56;
--teal:#00BFA0;
--teal-dark:#00967E;
--amber:#FFB020;
--amber-dark:#E69500;
--bg:#F6F7FB;
--card:#FFFFFF;
--muted:#5B6B8A;
--line:#E4E8F0;
--radius:18px;
--shadow:0 18px 45px rgba(15,35,66,.10);
--shadow-sm:0 8px 24px rgba(15,35,66,.08);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,sans-serif;color:var(--navy);background:var(--bg);line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:'Fraunces',serif;line-height:1.12;letter-spacing:-.02em}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
.container{max-width:1220px;margin:0 auto;padding:0 24px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--teal-dark);background:#DFF7F1;border:1px solid #BDEEDF;padding:7px 14px;border-radius:100px}
.eyebrow.amber{color:#7A4D00;background:#FFF2D6;border-color:#FFE1A3}
/* Topbar */
.topbar{background:var(--navy);color:#D6DDF0;font-size:13px}
.topbar-inner{display:flex;justify-content:space-between;align-items:center;padding:9px 24px;max-width:1220px;margin:0 auto;gap:16px}
.topbar a{color:#fff;font-weight:600}
.topbar .dot{width:7px;height:7px;background:#3DFFC2;border-radius:50%;display:inline-block;margin-right:8px;box-shadow:0 0 0 4px rgba(61,255,194,.18)}
/* Header */
header.site{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.header-main{max-width:1220px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;gap:22px}
.brand{display:flex;align-items:center;gap:13px;min-width:260px}
.brand img{width:52px;height:52px;border-radius:14px;object-fit:cover}
.brand-name{font-family:'Fraunces',serif;font-weight:800;font-size:24px;line-height:1}
.brand-name span{color:var(--teal-dark)}
.brand-tag{font-size:12px;color:var(--muted);font-weight:600;letter-spacing:.02em}
nav.primary{flex:1;display:flex;justify-content:center;gap:4px;flex-wrap:wrap}
nav.primary a{font-size:14.5px;font-weight:600;padding:10px 14px;border-radius:10px;color:#2A3A5E;transition:.2s}
nav.primary a:hover,nav.primary a.active{background:#EEF2FA;color:var(--navy)}
.header-cta{display:flex;gap:10px;align-items:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:700;font-size:15px;padding:13px 22px;border-radius:12px;border:1px solid transparent;cursor:pointer;transition:.2s;line-height:1}
.btn-primary{background:var(--navy);color:#fff}
.btn-primary:hover{background:var(--navy-2);transform:translateY(-1px)}
.btn-teal{background:var(--teal);color:#04281F}
.btn-teal:hover{background:#0AD1B0;transform:translateY(-1px)}
.btn-amber{background:var(--amber);color:#2B1A00}
.btn-amber:hover{background:#FFC24D}
.btn-outline{background:#fff;border-color:var(--line);color:var(--navy)}
.btn-outline:hover{border-color:var(--navy)}
.btn-sm{padding:10px 16px;font-size:14px}
.hamburger{display:none;border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 12px;font-size:18px;cursor:pointer}
/* Hero */
.hero{background:radial-gradient(1200px 600px at 85% -10%, #C8FFF0 0%, transparent 60%), radial-gradient(900px 500px at -10% 20%, #FFE9B8 0%, transparent 55%), linear-gradient(180deg,#fff 0%, #F6F7FB 100%);padding:52px 0 36px;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center}
.hero h1{font-size:58px;font-weight:800;margin:18px 0 16px}
.hero h1 em{font-style:normal;background:linear-gradient(90deg,var(--teal-dark),#00C2A8);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p.lead{font-size:18px;color:#3A4A6B;max-width:560px}
.search-card{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:14px;margin-top:26px}
.search-row{display:grid;grid-template-columns:1fr 1fr auto;gap:10px}
.field{background:#F3F5F9;border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:flex;align-items:center;gap:10px}
.field input,.field select{border:0;background:transparent;outline:none;width:100%;font-size:15px;font-weight:600;color:var(--navy);font-family:inherit}
.quick-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;font-size:13px;color:var(--muted)}
.quick-links a{background:#EEF6F3;border:1px solid #D3EEE5;padding:6px 12px;border-radius:100px;font-weight:600;color:#0A4A3E}
.hero-stats{display:flex;gap:28px;margin-top:24px}
.stat b{font-size:28px;font-family:'Fraunces',serif;display:block;line-height:1}
.stat span{font-size:13px;color:var(--muted);font-weight:600}
.hero-visual{position:relative}
.hero-visual .main-img{border-radius:24px;box-shadow:var(--shadow);object-fit:cover;width:100%;height:560px}
.float{position:absolute;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:14px 16px;display:flex;gap:12px;align-items:center}
.float.f1{top:28px;left:-28px}
.float.f2{bottom:36px;right:-12px}
.float .icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-size:20px;font-weight:800}
.logos{border-top:1px solid var(--line);margin-top:38px;padding-top:22px;display:flex;align-items:center;gap:26px;flex-wrap:wrap;opacity:.9}
.logos span{font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.logos strong{font-size:18px;color:#8A95B3;letter-spacing:-.02em}
/* Sections */
section.block{padding:74px 0}
.section-head{max-width:760px;margin-bottom:36px}
.section-head h2{font-size:42px;margin:16px 0 14px}
.section-head p{color:#3E4F71;font-size:17px}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden}
.card-pad{padding:28px}
.card img.cover{width:100%;height:220px;object-fit:cover}
/* Market */
.market{background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow);overflow:hidden;display:grid;grid-template-columns:1.15fr .85fr}
.market-left{padding:42px}
.bars{display:grid;gap:14px;margin:26px 0}
.bar-row{display:grid;grid-template-columns:150px 1fr 62px;align-items:center;gap:12px;font-size:14px;font-weight:600}
.bar-track{background:#EEF1F7;border-radius:100px;height:14px;overflow:hidden}
.bar-fill{height:100%;border-radius:100px;background:linear-gradient(90deg,var(--teal),#3DDCBA);width:0;transition:1.2s cubic-bezier(.2,.8,.2,1)}
.bar-fill.amber{background:linear-gradient(90deg,var(--amber),#FFD47A)}
.bar-fill.navy{background:linear-gradient(90deg,var(--navy),#3A5AA0)}
.market-right{background:var(--navy);color:#E8EDFA;padding:42px 36px;position:relative;overflow:hidden}
.market-right h3{font-size:28px;color:#fff;margin-bottom:12px}
.market-right p{color:#B9C4DE;font-size:15px}
.trend-list{margin:22px 0;display:grid;gap:12px}
.trend{display:flex;gap:12px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:14px}
.trend b{color:#fff;display:block;font-size:14px}
.trend span{font-size:13px;color:#B9C4DE}
.badge-up{background:#3DFFC2;color:#04281F;font-size:12px;font-weight:800;padding:3px 9px;border-radius:100px;white-space:nowrap;height:fit-content}
/* Jobs */
.filter-bar{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 22px}
.filter-bar button{border:1px solid var(--line);background:#fff;padding:10px 18px;border-radius:100px;font-weight:700;font-size:14px;cursor:pointer;color:#2A3A5E}
.filter-bar button.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.jobs-layout{display:grid;grid-template-columns:1fr 340px;gap:24px;align-items:start}
.job-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.job{padding:22px;display:flex;flex-direction:column;gap:12px;transition:.2s}
.job:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.job-top{display:flex;gap:12px;align-items:center}
.job-top img{width:52px;height:52px;border-radius:12px;object-fit:cover}
.job-top b{display:block;font-size:16px;line-height:1.2}
.job-top small{color:var(--muted);font-weight:600}
.tags{display:flex;gap:8px;flex-wrap:wrap}
.tags span{font-size:12px;font-weight:700;background:#F1F4F9;border:1px solid var(--line);padding:5px 10px;border-radius:100px}
.tags span.green{background:#DFF7F1;border-color:#BDEEDF;color:#0A4A3E}
.job p{font-size:14px;color:#3E4F71}
.job-foot{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:12px;border-top:1px dashed var(--line)}
.save-btn{border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 12px;cursor:pointer;font-weight:700}
.save-btn.saved{background:#FFF2D6;border-color:#FFD47A}
/* Sidebar */
.sidebar{display:grid;gap:18px;position:sticky;top:96px}
.side-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:var(--shadow-sm)}
.side-card h4{font-size:17px;margin-bottom:12px;font-family:'Inter',sans-serif;font-weight:800}
.side-card ul{list-style:none;display:grid;gap:12px}
.side-card li{display:flex;gap:10px;font-size:14px}
.side-card li img{width:56px;height:56px;border-radius:10px;object-fit:cover;flex-shrink:0}
.pref-box{background:linear-gradient(135deg,#0F2342,#1A3A6E);color:#fff;border-radius:18px;padding:24px}
.pref-box p{color:#B9C4DE;font-size:14px;margin:8px 0 16px}
/* Pathfinder */
.pathfinder{background:linear-gradient(180deg,#0F2342 0%, #132B53 100%);border-radius:28px;color:#fff;padding:12px;box-shadow:var(--shadow)}
.path-inner{border:1px solid rgba(255,255,255,.14);border-radius:20px;padding:46px;display:grid;grid-template-columns:1fr 1fr;gap:36px}
.path-inner h2{color:#fff;font-size:40px;margin:14px 0}
.path-inner>p,.path-inner .muted-light{color:#B9C4DE}
.quiz{background:#fff;color:var(--navy);border-radius:18px;padding:28px}
.quiz-step{display:none}
.quiz-step.active{display:block;animation:fade .35s ease}
@keyframes fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.opt-grid{display:grid;gap:10px;margin:18px 0}
.opt{border:1.5px solid var(--line);border-radius:12px;padding:13px 15px;font-weight:600;font-size:15px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:.15s;background:#F8F9FC}
.opt:hover{border-color:var(--teal);background:#EFFFFA}
.opt.selected{border-color:var(--navy);background:#0F2342;color:#fff}
.quiz-nav{display:flex;justify-content:space-between;gap:10px;margin-top:8px}
.progress{height:8px;background:#E9ECF3;border-radius:100px;overflow:hidden;margin:12px 0 6px}
.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--teal),var(--amber));width:33%;transition:.4s}
.result{display:none;background:#F6FFFc;border:1px solid #BDEEDF;border-radius:14px;padding:18px}
.result.show{display:block}
/* Features */
.feature{padding:26px}
.feature .f-icon{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;font-size:24px;margin-bottom:14px}
.feature h3{font-size:20px;font-family:'Inter',sans-serif;font-weight:800;margin-bottom:8px}
.feature p{font-size:15px;color:#3E4F71}
/* Testimonials */
.testimonials{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.t-card{padding:26px;display:flex;flex-direction:column;gap:14px}
.t-card p{font-size:15px;color:#2E3D5E}
.t-head{display:flex;gap:12px;align-items:center}
.t-head img{width:52px;height:52px;border-radius:50%;object-fit:cover}
.stars{color:var(--amber);letter-spacing:2px;font-size:14px}
/* Blog + FAQ */
.blog-card img{height:200px}
.blog-card .card-pad{padding:22px}
.meta{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-dark)}
.blog-card h3{font-size:20px;font-family:'Inter',sans-serif;font-weight:800;margin:10px 0 8px;line-height:1.35}
.faq{margin-top:8px;display:grid;gap:12px}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.faq-q{width:100%;text-align:left;background:#fff;border:0;padding:18px 20px;font-weight:800;font-size:16px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;color:var(--navy);font-family:inherit}
.faq-a{max-height:0;overflow:hidden;transition:max-height .35s ease;background:#F8F9FC}
.faq-a p{padding:0 20px 20px;font-size:15px;color:#3E4F71}
.faq-item.open .faq-a{max-height:320px}
.plus{width:32px;height:32px;border-radius:50%;background:#EEF2FA;display:grid;place-items:center;flex-shrink:0;transition:.25s}
.faq-item.open .plus{transform:rotate(45deg);background:var(--navy);color:#fff}
/* CTA banner */
.cta-banner{background:linear-gradient(90deg,#FFB020,#FF8A3D);border-radius:24px;padding:44px;display:grid;grid-template-columns:1.4fr auto;gap:24px;align-items:center;box-shadow:var(--shadow)}
.cta-banner h2{font-size:36px;color:#2B1A00}
.cta-banner p{color:#4A2E00;font-weight:500}
/* Footer */
footer{background:#0A1830;color:#B9C4DE;margin-top:70px}
.footer-grid{max-width:1220px;margin:0 auto;padding:60px 24px 30px;display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:32px}
footer h4{color:#fff;font-size:15px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:16px;font-family:'Inter',sans-serif}
footer a{color:#B9C4DE;font-size:14px}
footer a:hover{color:#fff}
footer ul{list-style:none;display:grid;gap:10px}
.socials{display:flex;gap:10px;margin-top:16px}
.socials a{width:40px;height:40px;border-radius:10px;background:rgba(255,255,255,.08);display:grid;place-items:center;color:#fff;font-weight:800;border:1px solid rgba(255,255,255,.12)}
.bottom{border-top:1px solid rgba(255,255,255,.12);padding:20px 24px;max-width:1220px;margin:0 auto;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:13px}
.news-form{display:flex;gap:8px;margin-top:14px}
.news-form input{flex:1;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:10px;padding:12px;color:#fff;outline:none}
.news-form button{background:var(--teal);border:0;border-radius:10px;padding:12px 18px;font-weight:800;cursor:pointer}
.toast{position:fixed;bottom:24px;right:24px;background:var(--navy);color:#fff;padding:14px 20px;border-radius:12px;box-shadow:var(--shadow);font-weight:600;font-size:14px;display:none;z-index:99}
.toast.show{display:block;animation:fade .3s}
@media(max-width:1020px){
.hero-grid,.grid-2,.market,.path-inner,.jobs-layout{grid-template-columns:1fr}
.grid-3,.job-grid{grid-template-columns:1fr 1fr}
nav.primary{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;padding:14px;border-bottom:1px solid var(--line)}
nav.primary.open{display:flex}
.hamburger{display:block}
.hero h1{font-size:42px}
.float.f1{left:8px}.float.f2{right:8px}
.footer-grid{grid-template-columns:1fr 1fr}
.cta-banner{grid-template-columns:1fr}
.hero-visual .main-img{height:420px}
}
@media(max-width:640px){
.grid-3,.job-grid{grid-template-columns:1fr}
.search-row{grid-template-columns:1fr}
.footer-grid{grid-template-columns:1fr}
.section-head h2{font-size:32px}
.market-left,.path-inner{padding:28px}
}
</style>
</head>
<body>
<div class="topbar">
<div class="topbar-inner">
<div><span class="dot"></span><strong style="color:#fff">Live:</strong> 12,408 new roles this week · <a href="#market">2026 Salary Report is out →</a></div>
<div style="display:flex;gap:18px"><a href="#jobs">For Employers</a><a href="#contact">Sign In</a></div>
</div>
</div>
<header class="site">
<div class="header-main">
<a class="brand" href="#top" aria-label="Ascendra home">
<img src="https://placehold.co/120x120/0F2342/FFFFFF?text=A&font=poppins" alt="Ascendra logo">
<span><span class="brand-name">Ascen<span>dra</span></span><br><span class="brand-tag">Careers that climb with you</span></span>
</a>
<nav class="primary" id="mainNav" aria-label="Primary navigation">
<a href="#jobs" class="active">Find Jobs</a>
<a href="#companies">Find Companies</a>
<a href="#develop">Career Advice</a>
<a href="#prep">Interview Prep</a>
<a href="#market">Salary Guide</a>
<a href="#blog">Blog</a>
<a href="#contact">Contact</a>
</nav>
<div class="header-cta">
<a href="#pathfinder" class="btn btn-outline btn-sm">Take Quiz</a>
<a href="#jobs" class="btn btn-primary btn-sm">Post a Job</a>
<button class="hamburger" id="hamburger" aria-label="Menu">☰</button>
</div>
</div>
</header>
<main id="top">
<!-- HERO -->
<div class="hero">
<div class="container">
<div class="hero-grid">
<div>
<span class="eyebrow">★ #1 Rated Career Platform 2026</span>
<h1>Find work that <em>moves you forward.</em></h1>
<p class="lead">Ascendra blends human coaching with real-time job market data to help you discover roles, build transferable skills, and grow your networking confidence — whether you're pivoting, leveling up, or starting fresh.</p>
<div class="search-card">
<div class="search-row">
<label class="field">🔍 <input type="text" id="kw" placeholder="Job title, skill, or company"></label>
<label class="field">📍 <input type="text" id="loc" placeholder="City, state, or remote"></label>
<button class="btn btn-teal" onclick="doSearch()">Find Companies</button>
</div>
<div class="quick-links">Popular: <a href="#jobs">Product Manager</a><a href="#jobs">Data Analyst</a><a href="#jobs">UX Designer</a><a href="#jobs">Remote Customer Success</a><a href="#jobs">Registered Nurse</a></div>
</div>
<div class="hero-stats">
<div class="stat"><b><span class="count" data-target="148000">0</span>+</b><span>Curated open roles</span></div>
<div class="stat"><b><span class="count" data-target="92">0</span>%</b><span>Interview rate lift</span></div>
<div class="stat"><b>4.9★</b><span>From 38k reviews</span></div>
</div>
</div>
<div class="hero-visual">
<img class="main-img" src="https://picsum.photos/640/700?random=11" alt="Professional woman smiling in modern office">
<div class="float f1"><div class="icon" style="background:#DFF7F1">✓</div><div><b style="font-size:14px">Interview Scheduled</b><br><small style="color:var(--muted)">Product Designer @ Loomly · Tue 10:30</small></div></div>
<div class="float f2"><div class="icon" style="background:#FFF2D6">↗</div><div><b style="font-size:14px">Offer +18% above ask</b><br><small style="color:var(--muted)">Salary negotiation coached</small></div></div>
</div>
</div>
<div class="logos"><span>Hiring partners at</span><strong>Google • HubSpot • Mayo Clinic • Figma • Patagonia • Stripe • Airbnb • Notion</strong></div>
</div>
</div>
<!-- MARKET ANALYSIS -->
<section class="block" id="market" style="padding-bottom:20px">
<div class="container">
<div class="section-head">
<span class="eyebrow amber">Job Market Analysis • Q3 2026</span>
<h2>Industry trends, decoded for your next move</h2>
<p>The job market isn't cooling — it's reshaping. Employers are hiring for adaptability over pedigree, and transferable skills are now the strongest currency. We analyzed 1.4M postings and 62,000 hiring manager surveys to pinpoint where demand, pay, and flexibility intersect.</p>
</div>
<div class="market">
<div class="market-left">
<h3 style="font-family:Inter;font-weight:800;font-size:20px">Where demand is surging (YoY growth)</h3>
<p style="color:var(--muted);font-size:15px;margin-top:8px">Healthcare operations, green energy, AI-adjacent roles, and client-facing tech continue to outpace the broader market. Remote-hybrid remains dominant in knowledge work at 63% of new listings.</p>
<div class="bars" id="bars">
<div class="bar-row"><span>AI & Data Support</span><div class="bar-track"><div class="bar-fill" data-w="92%"></div></div><b>+92%</b></div>
<div class="bar-row"><span>Healthcare Ops</span><div class="bar-track"><div class="bar-fill amber" data-w="78%"></div></div><b>+78%</b></div>
<div class="bar-row"><span>Green & Skilled Trades</span><div class="bar-track"><div class="bar-fill navy" data-w="64%"></div></div><b>+64%</b></div>
<div class="bar-row"><span>Customer Success</span><div class="bar-track"><div class="bar-fill" data-w="51%"></div></div><b>+51%</b></div>
<div class="bar-row"><span>Cybersecurity</span><div class="bar-track"><div class="bar-fill amber" data-w="47%"></div></div><b>+47%</b></div>
</div>
<div class="grid-2" style="gap:16px">
<div style="background:#F6F7FB;border:1px solid var(--line);border-radius:14px;padding:18px"><b>What this means for you</b><p style="font-size:14px;color:#3E4F71;margin-top:6px">If you're pivoting, don't start over — translate. Retail leadership maps to customer success, teaching maps to enablement and training, and admin excellence maps to operations.</p></div>
<div style="background:#FFF8E8;border:1px solid #FFE1A3;border-radius:14px;padding:18px"><b>💡 Networking still wins</b><p style="font-size:14px;color:#5A4510;margin-top:6px">68% of hires came via referral or warm intro. Our networking scripts help you reach out without feeling awkward.</p></div>
</div>
<div style="display:flex;gap:10px;margin-top:20px;flex-wrap:wrap"><a href="#blog" class="btn btn-primary">Read Full Market Report</a><a href="#pathfinder" class="btn btn-outline">Match My Skills →</a></div>
</div>
<div class="market-right" id="companies">
<span class="eyebrow" style="background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.18);color:#3DFFC2">Hiring Trends Live</span>
<h3>Companies hiring for potential</h3>
<p>These partners actively interview candidates with non-linear backgrounds and strong transferable skills. All offer structured onboarding and mentorship.</p>
<div class="trend-list">
<div class="trend"><span class="badge-up">+210 roles</span><div><b>Northwind Health</b><span>Medical assistants, care coordinators • $24–$38/hr • Hybrid</span></div></div>
<div class="trend"><span class="badge-up">+164 roles</span><div><b>Brightline Energy</b><span>Field techs, project coordinators • Training provided</span></div></div>
<div class="trend"><span class="badge-up">+98 roles</span><div><b>Loomly & Co.</b><span>Support, success, UX research • Remote-first</span></div></div>
</div>
<a href="#jobs" class="btn btn-amber" style="width:100%">Find Companies Hiring Now</a>
<p style="font-size:12px;margin-top:10px;text-align:center">✓ Verified pay ranges ✓ No ghost jobs ✓ Responds in < 7 days</p>
<img src="https://picsum.photos/500/220?random=21" alt="Team collaborating" style="border-radius:14px;margin-top:16px;width:100%;height:150px;object-fit:cover;opacity:.9">
</div>
</div>
</div>
</section>
<!-- JOBS + SIDEBAR -->
<section class="block" id="jobs">
<div class="container">
<div class="section-head">
<span class="eyebrow">Featured Positions • Updated Hourly</span>
<h2>Hand-vetted jobs worth your time</h2>
<p>Every listing is screened for real salary transparency, respectful hiring practices, and growth potential. Save favorites, set alerts, and apply with a profile that travels across the entire job market with you.</p>
</div>
<div class="filter-bar" id="filters">
<button class="active" data-f="all">All roles</button>
<button data-f="tech">Tech & Data</button>
<button data-f="design">Design & Marketing</button>
<button data-f="people">People & Support</button>
<button data-f="health">Healthcare</button>
</div>
<div class="jobs-layout">
<div class="job-grid" id="jobGrid">
<article class="card job" data-cat="tech"><div class="job-top"><img src="https://placehold.co/120x120/0F2342/FFFFFF?text=S&font=poppins" alt="Stripe-like logo"><div><b>Associate Data Analyst</b><small>Stratos • Remote • Full-time</small></div></div><div class="tags"><span class="green">$78k–$102k</span><span>SQL</span><span>Entry-friendly</span></div><p>Turn messy support data into clear insights. Great launchpad if you're strong in spreadsheets and curious about storytelling with data. Mentorship + certification stipend.</p><div class="job-foot"><a href="#contact" class="btn btn-primary btn-sm">Apply Now</a><button class="save-btn" onclick="saveJob(this)">♡ Save</button></div></article>
<article class="card job" data-cat="design"><div class="job-top"><img src="https://placehold.co/120x120/00BFA0/04281F?text=F&font=poppins" alt="Figma-like logo"><div><b>UX Designer (Growth)</b><small>Framely • Hybrid – Austin</small></div></div><div class="tags"><span class="green">$95k–$128k</span><span>Figma</span><span>Hybrid</span></div><p>Own onboarding experiments end-to-end. You'll partner with research and product to lift activation. Portfolio over pedigree — show us how you think.</p><div class="job-foot"><a href="#contact" class="btn btn-primary btn-sm">Apply Now</a><button class="save-btn" onclick="saveJob(this)">♡ Save</button></div></article>
<article class="card job" data-cat="people"><div class="job-top"><img src="https://placehold.co/120x120/FFB020/2B1A00?text=L&font=poppins" alt="Loomly logo"><div><b>Customer Success Manager</b><small>Loomly • Remote • $5k home office</small></div></div><div class="tags"><span class="green">$72k + bonus</span><span>Remote</span><span>Career switchers ✓</span></div><p>Perfect for teachers, retail leads, and hospitality pros. Your empathy and organization are transferable skills our clients love. Paid SaaS training included.</p><div class="job-foot"><a href="#contact" class="btn btn-primary btn-sm">Apply Now</a><button class="save-btn" onclick="saveJob(this)">♡ Save</button></div></article>
<article class="card job" data-cat="health"><div class="job-top"><img src="https://placehold.co/120x120/162E56/FFFFFF?text=N&font=poppins" alt="Northwind logo"><div><b>Care Coordinator</b><small>Northwind Health • Denver • Hybrid</small></div></div><div class="tags"><span class="green">$26–$34/hr</span><span>Benefits Day 1</span></div><p>Guide patients through their care journey. Bilingual candidates encouraged. Tuition support toward MA, LPN, or healthcare admin pathways.</p><div class="job-foot"><a href="#contact" class="btn btn-primary btn-sm">Apply Now</a><button class="save-btn" onclick="saveJob(this)">♡ Save</button></div></article>
<article class="card job" data-cat="tech"><div class="job-top"><img src="https://placehold.co/120x120/0F2342/3DFFC2?text=B&font=poppins" alt="Brightline logo"><div><b>Junior Cybersecurity Analyst</b><small>Brightline • Remote • SOC</small></div></div><div class="tags"><span class="green">$88k–$110k</span><span>Security+</span><span>Mentored</span></div><p>Monitor, triage, and learn in a supportive SOC. We hire for curiosity and integrity — we'll fund your Security+ and sponsor clearances.</p><div class="job-foot"><a href="#contact" class="btn btn-primary btn-sm">Apply Now</a><button class="save-btn" onclick="saveJob(this)">♡ Save</button></div></article>
<article class="card job" data-cat="design"><div class="job-top"><img src="https://placehold.co/120x120/E84A6F/FFFFFF?text=P&font=poppins" alt="Patagonia-like logo"><div><b>Content Strategist</b><small>Field & Fern • Remote • 4-day week</small></div></div><div class="tags"><span class="green">$80k–$98k</span><span>4-day week</span></div><p>Lead storytelling across blog, email, and guides. If you love translating complex topics into human language, you'll thrive here.</p><div class="job-foot"><a href="#contact" class="btn btn-primary btn-sm">Apply Now</a><button class="save-btn" onclick="saveJob(this)">♡ Save</button></div></article>
</div>
<aside class="sidebar">
<div class="pref-box"><h4 style="color:#fff">Get only roles that fit 🎯</h4><p>Tell us your preferences once — salary, location, values — and we'll filter the noise and nudge you when the right fit posts.</p><button class="btn btn-teal" style="width:100%" onclick="showToast('Preferences saved! We’ll email you 5 curated roles tomorrow.')">Set Preferences</button></div>
<div class="side-card"><h4>📈 This week's hiring trends</h4><ul><li>✅ <span><b>Skills-based hiring up 34%</b><br><span style="color:var(--muted)">Resumes without degrees getting 2x callbacks.</span></span></li><li>✅ <span><b>Hybrid wins retention</b><br><span style="color:var(--muted)">3-day in-office is the new sweet spot.</span></span></li><li>✅ <span><b>AI literacy = +$12k premium</b><br><span style="color:var(--muted)">Even in non-tech roles.</span></span></li></ul></div>
<div class="side-card"><h4>📰 Recent posts</h4><ul><li><img src="https://picsum.photos/112/112?random=31" alt="post"><span><b style="font-size:13px">How to answer “Tell me about yourself” in 2026</b><br><span style="color:var(--muted);font-size:13px">4 min read • 18k views</span></span></li><li><img src="https://picsum.photos/112/112?random=32" alt="post"><span><b style="font-size:13px">7 transferable skills hiring managers scan for</b><br><span style="color:var(--muted);font-size:13px">6 min read • 12k views</span></span></li></ul></div>
</aside>
</div>
</div>
</section>
<!-- PATHFINDER + DEVELOPMENT -->
<section class="block" id="develop" style="padding-top:20px">
<div class="container">
<div class="pathfinder" id="pathfinder">
<div class="path-inner">
<div>
<span class="eyebrow" style="background:rgba(61,255,194,.14);border-color:rgba(61,255,194,.3);color:#3DFFC2">Interactive • Career Path Finder</span>
<h2>Not sure what's next? Let's map it.</h2>
<p class="muted-light" style="font-size:16px">Answer three quick questions and get a personalized career track based on live job market demand, salary growth, and your natural strengths. No fluff — just a clear starting point.</p>
<div style="display:grid;gap:14px;margin-top:24px">
<div style="display:flex;gap:12px;align-items:flex-start"><span style="background:#FFB020;color:#2B1A00;font-weight:800;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;flex-shrink:0">1</span><p style="font-size:14px"><b style="color:#fff">Career development is non-linear.</b> <span style="color:#B9C4DE">Over 61% of successful pivots reuse at least 60% of their existing skills. We'll show you how.</span></p></div>
<div style="display:flex;gap:12px;align-items:flex-start"><span style="background:#00BFA0;color:#04281F;font-weight:800;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;flex-shrink:0">2</span><p style="font-size:14px"><b style="color:#fff">Networking beats applying.</b> <span style="color:#B9C4DE">Each recommendation includes a 2-week outreach plan and who to talk to first.</span></p></div>
</div>
<img src="https://picsum.photos/560/280?random=41" alt="Mentoring session" style="border-radius:14px;margin-top:24px;width:100%;height:180px;object-fit:cover">
</div>
<div class="quiz" id="quiz">
<div class="progress"><i id="prog"></i></div>
<small id="stepLabel" style="font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)">Step 1 of 3</small>
<div class="quiz-step active" data-step="1"><h3 style="font-size:22px;margin-top:6px">What energizes you most at work?</h3><div class="opt-grid"><div class="opt" data-v="analytical">🧩 Solving complex problems <span>→</span></div><div class="opt" data-v="people">🤝 Leading & helping people <span>→</span></div><div class="opt" data-v="creative">🎨 Creating & storytelling <span>→</span></div><div class="opt" data-v="organized">🗂️ Organizing & improving systems <span>→</span></div></div></div>
<div class="quiz-step" data-step="2"><h3 style="font-size:22px;margin-top:6px">Pick your superpower:</h3><div class="opt-grid"><div class="opt" data-v="data">📊 Analytical thinking</div><div class="opt" data-v="comm">💬 Communication & empathy</div><div class="opt" data-v="tech">💻 Technical curiosity</div><div class="opt" data-v="ops">⚙️ Operations & reliability</div></div></div>
<div class="quiz-step" data-step="3"><h3 style="font-size:22px;margin-top:6px">Where are you now?</h3><div class="opt-grid"><div class="opt" data-v="entry">🌱 Early career (0–2 yrs)</div><div class="opt" data-v="mid">🚀 Mid-career pivot (3–8 yrs)</div><div class="opt" data-v="lead">🏔️ Seasoned pro (8+ yrs)</div></div></div>
<div class="result" id="quizResult"></div>
<div class="quiz-nav"><button class="btn btn-outline btn-sm" id="backBtn">← Back</button><button class="btn btn-primary btn-sm" id="resetBtn" onclick="resetQuiz()">Restart</button></div>
<p style="font-size:12px;color:var(--muted);margin-top:12px">Takes ~40 seconds • Used by 210,000+ job seekers • Free forever</p>
</div>
</div>
</div>
<div class="grid-3" style="margin-top:28px">
<div class="card feature"><div class="f-icon" style="background:#DFF7F1">🧠</div><h3>Translate your experience</h3><p>Our skills translator turns retail, teaching, military, caregiving, and admin backgrounds into recruiter-ready language. Highlight transferable skills like conflict resolution, stakeholder management, and process improvement — the exact phrases applicant tracking systems reward.</p><a href="#prep" style="font-weight:800;color:var(--teal-dark)">Try the translator →</a></div>
<div class="card feature"><div class="f-icon" style="background:#FFF2D6">🤝</div><h3>Networking without cringe</h3><p>Forget cold spam. Get warm-intro scripts, 15-minute coffee chat agendas, and follow-up templates that actually get replies. Join weekly virtual meetups by industry and practice your pitch in a low-pressure, supportive room.</p><a href="#contact" style="font-weight:800;color:var(--teal-dark)">Join next meetup →</a></div>
<div class="card feature"><div class="f-icon" style="background:#E9EDFF">📈</div><h3>Grow on the job</h3><p>Career development doesn't stop at the offer letter. Access 120+ micro-courses on leadership, negotiation, and AI productivity, plus quarterly growth reviews with a dedicated coach who keeps you accountable to your next promotion.</p><a href="#blog" style="font-weight:800;color:var(--teal-dark)">Explore courses →</a></div>
</div>
</div>
</section>
<!-- INTERVIEW PREP -->
<section class="block" id="prep" style="background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)">
<div class="container">
<div class="grid-2" style="align-items:center">
<div>
<span class="eyebrow">Interview Prep • Resume Tips • Coaching</span>
<h2 style="font-size:42px;margin:16px 0">Walk in calm. Walk out with an offer.</h2>
<p style="color:#3E4F71;font-size:17px">Interviews are a skill — and skills can be trained. Our prep combines mock interviews with hiring managers, AI feedback on your delivery, and resume rewrites that clear both human and automated screens.</p>
<div style="display:grid;gap:14px;margin:24px 0">
<div style="display:flex;gap:14px;background:#F6F7FB;border:1px solid var(--line);border-radius:14px;padding:16px"><span style="font-size:24px">📝</span><div><b>Resume that gets read in 7 seconds</b><p style="font-size:14px;color:#3E4F71">We cut jargon, quantify impact, and front-load keywords for the job market you're targeting. Average result: 3.2x more callbacks in 30 days.</p></div></div>
<div style="display:flex;gap:14px;background:#F6F7FB;border:1px solid var(--line);border-radius:14px;padding:16px"><span style="font-size:24px">🎙️</span><div><b>Mock interviews with real feedback</b><p style="font-size:14px;color:#3E4F71">Practice behavioral, case, and technical rounds. Get scores on clarity, confidence, and conciseness — plus exact phrases to tighten your stories.</p></div></div>
<div style="display:flex;gap:14px;background:#F6F7FB;border:1px solid var(--line);border-radius:14px;padding:16px"><span style="font-size:24px">💰</span><div><b>Negotiate without fear</b><p style="font-size:14px;color:#3E4F71">Most candidates leave $7,400 on the table. Use our offer analyzer and word-for-word scripts to advocate for pay, flexibility, and growth.</p></div></div>
</div>
<div style="display:flex;gap:10px;flex-wrap:wrap"><button class="btn btn-primary" onclick="showToast('Mock interview booked! Check your inbox for your prep checklist.')">Schedule Interview Coaching</button><a href="#blog" class="btn btn-outline">Get Free Resume Checklist</a></div>
</div>
<div>
<img src="https://picsum.photos/600/460?random=51" alt="Interview coaching" style="border-radius:20px;box-shadow:var(--shadow);width:100%;height:360px;object-fit:cover">
<div class="card" style="margin-top:18px;padding:20px;display:flex;gap:14px;align-items:center"><img src="https://i.pravatar.cc/100?u=coachmaya" alt="Coach" style="width:58px;height:58px;border-radius:50%"><div><b>Maya R., Senior Career Coach</b><p style="font-size:14px;color:var(--muted)">“Your last role doesn't define your next one. Your stories do. Let's make them undeniable.”</p></div><span style="margin-left:auto;background:#DFF7F1;color:#0A4A3E;font-weight:800;font-size:12px;padding:6px 12px;border-radius:100px;white-space:nowrap">● Online now</span></div>
</div>
</div>
</div>
</section>
<!-- TESTIMONIALS -->
<section class="block testimonials">
<div class="container">
<div class="section-head" style="text-align:center;margin:0 auto 36px"><span class="eyebrow">Success Stories • 38,000+ Reviews</span><h2>Real people. Real pivots. Real offers.</h2><p>From baristas to analysts, teachers to CSMs — here's what happens when preparation meets opportunity.</p></div>
<div class="grid-3">
<div class="card t-card"><div class="stars">★★★★★</div><p>“I was a retail manager convinced tech was closed off to me. Ascendra showed me my transferable skills were exactly what SaaS companies wanted. Three weeks of networking scripts + one mock interview = two offers.”</p><div class="t-head"><img src="https://i.pravatar.cc/100?u=jasmine22" alt="Jasmine"><div><b>Jasmine T.</b><br><small style="color:var(--muted)">Customer Success @ Loomly • +$18k raise</small></div></div></div>
<div class="card t-card" style="border:2px solid var(--navy)"><div class="stars">★★★★★</div><p>“The salary data alone paid for itself. I walked into negotiation with market comps and walked out with $11k more plus fully remote Fridays. The Schedule Interview flow made prep feel doable, not daunting.”</p><div class="t-head"><img src="https://i.pravatar.cc/100?u=marcus91" alt="Marcus"><div><b>Marcus D.</b><br><small style="color:var(--muted)">Data Analyst @ Stratos • Career switcher</small></div></div></div>
<div class="card t-card"><div class="stars">★★★★★</div><p>“As a new grad, the job market felt terrifying. The Path Finder pointed me to healthcare ops, and the resume rewrite got me interviews in 9 days. My coach even helped me choose between offers.”</p><div class="t-head"><img src="https://i.pravatar.cc/100?u=priya7" alt="Priya"><div><b>Priya S.</b><br><small style="color:var(--muted)">Care Coordinator @ Northwind • First-gen grad</small></div></div></div>
</div>
</div>
</section>
<!-- BLOG + FAQ -->
<section class="block" id="blog">
<div class="container">
<div class="section-head"><span class="eyebrow">Blog • Career Advice That Works</span><h2>Learn the plays behind the promotions</h2><p>Practical, no-fluff guides written by recruiters, hiring managers, and coaches who live in the job market every day.</p></div>
<div class="grid-3">
<article class="card blog-card"><img class="cover" src="https://picsum.photos/400/240?random=61" alt="Resume tips"><div class="card-pad"><span class="meta">Resume Tips • 6 min</span><h3>7 transferable skills hiring managers scan for in 6 seconds</h3><p style="font-size:14px;color:var(--muted)">Communication, ownership, data fluency, and four more — with bullet examples you can copy.</p><a href="#blog" style="font-weight:800;color:var(--navy)">Read article →</a></div></article>
<article class="card blog-card"><img class="cover" src="https://picsum.photos/400/240?random=62" alt="Networking"><div class="card-pad"><span class="meta">Networking • 4 min</span><h3>The 15-minute networking system for introverts</h3><p style="font-size:14px;color:var(--muted)">Three messages, one coffee chat, zero awkwardness. Includes templates with 42% reply rate.</p><a href="#blog" style="font-weight:800;color:var(--navy)">Read article →</a></div></article>
<article class="card blog-card"><img class="cover" src="https://picsum.photos/400/240?random=63" alt="Interview"><div class="card-pad"><span class="meta">Interview Prep • 8 min</span><h3>“Tell me about yourself” — a formula that always lands</h3><p style="font-size:14px;color:var(--muted)">Present, past, future. How to condense your story into 90 confident seconds.</p><a href="#blog" style="font-weight:800;color:var(--navy)">Read article →</a></div></article>
</div>
<div class="grid-2" style="margin-top:34px;align-items:start">
<div><h3 style="font-size:26px;margin-bottom:14px">Frequently asked questions</h3><div class="faq" id="faq"><div class="faq-item open"><button class="faq-q">Is Ascendra free for job seekers? <span class="plus">+</span></button><div class="faq-a"><p>Yes — searching, applying, salary data, and the Career Path Finder are free forever. Optional coaching (resume rewrites, mock interviews) starts at $49 one-time, with scholarships for students, veterans, and career returners.</p></div></div><div class="faq-item"><button class="faq-q">I'm changing careers. Where do I start? <span class="plus">+</span></button><div class="faq-a"><p>Start with the Path Finder above, then use our skills translator to reframe your background. Most switchers get traction fastest in customer success, operations, sales, healthcare support, and data-adjacent roles that prize transferable skills.</p></div></div><div class="faq-item"><button class="faq-q">How is the job market right now? <span class="plus">+</span></button><div class="faq-a"><p>Competitive but opportunity-rich. Employers are cautious on headcount yet urgent on skilled roles. Candidates with clear positioning, warm networking, and AI fluency are seeing faster cycles and stronger offers than last year.</p></div></div><div class="faq-item"><button class="faq-q">Do you help with resumes and interviews? <span class="plus">+</span></button><div class="faq-a"><p>Absolutely. Book a 45-minute Schedule Interview session with a hiring manager in your field, or submit your resume for a 24-hour expert teardown with ATS and recruiter feedback.</p></div></div></div></div>
<div><div class="cta-banner"><div><h2>Get 5 jobs in your inbox tomorrow.</h2><p>Join 480,000+ professionals getting curated roles, salary shifts, and one actionable career tip every Tuesday. No spam, unsubscribe anytime.</p><form class="news-form" onsubmit="event.preventDefault();showToast('Welcome aboard! Check your inbox to confirm.')" style="margin-top:16px"><input type="email" required placeholder="you@email.com" aria-label="Email"><button type="submit">Subscribe</button></form></div><div style="text-align:center"><img src="https://placehold.co/220x220/0F2342/FFFFFF?text=480k+readers&font=poppins" alt="Newsletter" style="border-radius:18px;width:200px"></div></div></div>
</div>
</div>
</section>
</main>
<footer id="contact">
<div class="footer-grid">
<div>
<div style="display:flex;gap:12px;align-items:center;margin-bottom:14px"><img src="https://placehold.co/120x120/FFFFFF/0F2342?text=A&font=poppins" alt="Ascendra logo" style="width:46px;height:46px;border-radius:12px"><div><b style="color:#fff;font-family:Fraunces;font-size:22px">Ascendra</b><br><small>Careers that climb with you</small></div></div>
<p style="font-size:14px;max-width:320px">Job boards, career advice, resume tips, and professional resources — built to help you navigate every chapter of your working life.</p>
<p style="font-size:14px;margin-top:14px">📍 550 Market St, Suite 800<br>San Francisco, CA 94104<br>📞 (415) 555-0132<br>✉️ hello@ascendra.careers</p>
<div class="socials"><a href="#" aria-label="LinkedIn">in</a><a href="#" aria-label="X">X</a><a href="#" aria-label="Instagram">◎</a><a href="#" aria-label="YouTube">▶</a></div>
</div>
<div><h4>Job Seekers</h4><ul><li><a href="#jobs">Find Jobs</a></li><li><a href="#companies">Find Companies</a></li><li><a href="#prep">Interview Prep</a></li><li><a href="#market">Salary Guide</a></li><li><a href="#pathfinder">Career Path Finder</a></li></ul></div>
<div><h4>Resources</h4><ul><li><a href="#blog">Blog</a></li><li><a href="#develop">Career Advice</a></li><li><a href="#blog">Resume Templates</a></li><li><a href="#contact">Networking Events</a></li><li><a href="#contact">Help Center</a></li></ul></div>
<div><h4>Company</h4><ul><li><a href="#contact">Contact</a></li><li><a href="#">About Us</a></li><li><a href="#">For Employers</a></li><li><a href="#">Privacy Policy</a></li><li><a href="#">Terms of Service</a></li></ul></div>
</div>
<div class="bottom"><span>© 2026 Ascendra Careers, Inc. All rights reserved. Made with care in San Francisco.</span><span><a href="#">Privacy</a> · <a href="#">Terms</a> · <a href="#">Cookies</a> · <a href="#">Accessibility</a></span></div>
</footer>
<div class="toast" id="toast"></div>
<script>
// Mobile nav
document.getElementById('hamburger').onclick = ()=> document.getElementById('mainNav').classList.toggle('open');
// Counters
const io = new IntersectionObserver(es=>es.forEach(e=>{if(e.isIntersecting){const el=e.target;const t=+el.dataset.target;let c=0;const step=Math.ceil(t/60);const iv=setInterval(()=>{c+=step;if(c>=t){c=t;clearInterval(iv)}el.textContent=c.toLocaleString()},20);io.unobserve(el)}}),{threshold:.5});
document.querySelectorAll('.count').forEach(el=>io.observe(el));
// Bars
const bio = new IntersectionObserver(es=>es.forEach(e=>{if(e.isIntersecting){e.target.querySelectorAll('.bar-fill').forEach(b=>b.style.width=b.dataset.w);bio.unobserve(e.target)}}),{threshold:.3});
bio.observe(document.getElementById('bars'));
// Filters
document.querySelectorAll('#filters button').forEach(btn=>btn.onclick=()=>{
document.querySelectorAll('#filters button').forEach(b=>b.classList.remove('active'));btn.classList.add('active');
const f=btn.dataset.f;document.querySelectorAll('#jobGrid .job').forEach(j=>{j.style.display=(f==='all'||j.dataset.cat===f)?'flex':'none'});
});
function saveJob(b){b.classList.toggle('saved');b.textContent=b.classList.contains('saved')?'♥ Saved':'♡ Save';showToast(b.classList.contains('saved')?'Saved! We’ll alert you to similar roles.':'Removed from saved jobs.')}
function doSearch(){const k=document.getElementById('kw').value||'recommended roles';const l=document.getElementById('loc').value||'anywhere';showToast(`Searching ${k} in ${l} — 2,340 matches found!`);document.getElementById('jobs').scrollIntoView({behavior:'smooth'})}
function showToast(m){const t=document.getElementById('toast');t.textContent=m;t.classList.add('show');clearTimeout(t._x);t._x=setTimeout(()=>t.classList.remove('show'),3200)}
// FAQ
document.querySelectorAll('.faq-item').forEach(it=>{it.querySelector('.faq-q').onclick=()=>{document.querySelectorAll('.faq-item').forEach(o=>{if(o!==it)o.classList.remove('open')});it.classList.toggle('open')}});
// Quiz
let answers={};let step=1;
const steps=[...document.querySelectorAll('.quiz-step')];
function render(){steps.forEach(s=>s.classList.toggle('active',+s.dataset.step===step));document.getElementById('stepLabel').textContent=step<=3?`Step ${step} of 3`:'Your result';document.getElementById('prog').style.width=(step/3*100)+'%'}
document.querySelectorAll('.opt').forEach(o=>o.onclick=()=>{
const s=o.closest('.quiz-step');s.querySelectorAll('.opt').forEach(x=>x.classList.remove('selected'));o.classList.add('selected');
answers[s.dataset.step]=o.dataset.v;
setTimeout(()=>{if(step<3){step++;render()}else{showResult()}},280);
});
document.getElementById('backBtn').onclick=()=>{if(step>1){step--;document.getElementById('quizResult').classList.remove('show');render()}};
function resetQuiz(){answers={};step=1;document.getElementById('quizResult').classList.remove('show');document.querySelectorAll('.opt').forEach(x=>x.classList.remove('selected'));render()}
function showResult(){
const map={
analytical:{title:'Data & Insights Track 📊',roles:'Data Analyst → Analytics Lead → Product Insights',pay:'$78k → $145k median',plan:'Week 1: SQL basics + portfolio project. Week 2: 5 networking chats with analysts.'},
people:{title:'People & Success Track 🤝',roles:'Customer Success Rep → CSM → Success Lead',pay:'$62k → $128k + bonus',plan:'Week 1: SaaS trial + mock discovery call. Week 2: Outreach to 10 CSMs for referrals.'},
creative:{title:'Creative & Growth Track 🎨',roles:'Content Strategist → UX Research → Product Marketing',pay:'$70k → $135k median',plan:'Week 1: Publish 2 case studies. Week 2: Portfolio review + hiring manager intro.'},
organized:{title:'Operations & Leadership Track ⚙️',roles:'Ops Coordinator → Project Manager → Program Lead',pay:'$68k → $138k median',plan:'Week 1: Notion + Sheets sprint. Week 2: Shadow an ops lead + PM cert roadmap.'}
};
const key=answers[1]||'analytical';const r=map[key]||map.analytical;
const lvl={entry:'Starter plan (0–2 yrs): internships + certs fast-track you.',mid:'Pivot plan: your experience = +$12–18k premium once translated.',lead:'Leadership plan: target Senior/Lead + equity in 2 moves.'}[answers[3]]||'';
const box=document.getElementById('quizResult');
box.innerHTML=`<b style="font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#00967E">✨ Your recommended path • 94% match</b><h3 style="font-size:22px;margin:8px 0">${r.title}</h3><p style="font-size:14px"><b>Path:</b> ${r.roles}<br><b>Pay trajectory:</b> ${r.pay}<br><b>${lvl}</b></p><p style="font-size:14px;margin-top:8px;background:#fff;border:1px dashed #9ADFCB;border-radius:10px;padding:10px"><b>Your 2-week kickstart:</b> ${r.plan}</p><div style="display:flex;gap:8px;margin-top:12px;flex-wrap:wrap"><button class="btn btn-teal btn-sm" onclick="showToast('Full career roadmap sent to your inbox!')">Email My Roadmap</button><button class="btn btn-outline btn-sm" onclick="resetQuiz()">Retake</button></div>`;
box.classList.add('show');document.getElementById('stepLabel').textContent='Your result';document.getElementById('prog').style.width='100%';
}
render();
</script>
</body>
</html>
View Axe Report (JSON)
{
"testEngine": {
"name": "axe-core",
"version": "4.10.2"
},
"testRunner": {
"name": "axe"
},
"testEnvironment": {
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/156.0.8078.4 Safari/537.36",
"windowWidth": 1280,
"windowHeight": 720,
"orientationAngle": 0,
"orientationType": "landscape-primary"
},
"timestamp": "2026-11-12T09:54:54.411Z",
"url": "https://benchmark.aimac.invalid/32f723b60ad08161d8d07cbc4c6bc8929d9fa69df3f7080c7e1e75b4e47f3ee9.html",
"toolOptions": {
"runOnly": {
"type": "tag",
"values": [
"wcag2a",
"wcag2aa",
"wcag21a",
"wcag21aa",
"wcag22a",
"wcag22aa"
]
},
"resultTypes": [
"violations"
],
"reporter": "v1"
},
"inapplicable": [
{
"id": "area-alt",
"impact": null,
"tags": [
"cat.text-alternatives",
"wcag2a",
"wcag244",
"wcag412",
"section508",
"section508.22.a",
"TTv5",
"TT6.a",
"EN-301-549",
"EN-9.2.4.4",
"EN-9.4.1.2",
"ACT"
],
"description": "Ensure <area> elements of image maps have alternative text",
"help": "Active <area> elements must have alternative text",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/area-alt?application=axeAPI",
"nodes": []
},
{
"id": "aria-braille-equivalent",
"impact": null,
"tags": [
"cat.aria",
"wcag2a",
"wcag412",
"EN-301-549",
"EN-9.4.1.2"
],
"description": "Ensure aria-braillelabel and aria-brailleroledescription have a non-braille equivalent",
"help": "aria-braille attributes must have a non-braille equivalent",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-braille-equivalent?application=axeAPI",
"nodes": []
},
{
"id": "aria-command-name",
"impact": null,
"tags": [
"cat.aria",
"wcag2a",
"wcag412",
"TTv5",
"TT6.a",
"EN-301-549",
"EN-9.4.1.2",
"ACT"
],
"description": "Ensure every ARIA button, link and menuitem has an accessible name",
"help": "ARIA commands must have an accessible name",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-command-name?application=axeAPI",
"nodes": []
},
{
"id": "aria-deprecated-role",
"impact": null,
"tags": [
"cat.aria",
"wcag2a",
"wcag412",
"EN-301-549",
"EN-9.4.1.2"
],
"description": "Ensure elements do not use deprecated roles",
"help": "Deprecated ARIA roles must not be used",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-deprecated-role?application=axeAPI",
"nodes": []
},
{
"id": "aria-hidden-focus",
"impact": null,
"tags": [
"cat.name-role-value",
"wcag2a",
"wcag412",
"TTv5",
"TT6.a",
"EN-301-549",
"EN-9.4.1.2"
],
"description": "Ensure aria-hidden elements are not focusable nor contain focusable elements",
"help": "ARIA hidden element must not be focusable or contain focusable elements",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-hidden-focus?application=axeAPI",
"nodes": []
},
{
"id": "aria-input-field-name",
"impact": null,
"tags": [
"cat.aria",
"wcag2a",
"wcag412",
"TTv5",
"TT5.c",
"EN-301-549",
"EN-9.4.1.2",
"ACT"
],
"description": "Ensure every ARIA input field has an accessible name",
"help": "ARIA input fields must have an accessible name",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-input-field-name?application=axeAPI",
"nodes": []
},
{
"id": "aria-meter-name",
"impact": null,
"tags": [
"cat.aria",
"wcag2a",
"wcag111",
"EN-301-549",
"EN-9.1.1.1"
],
"description": "Ensure every ARIA meter node has an accessible name",
"help": "ARIA meter nodes must have an accessible name",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-meter-name?application=axeAPI",
"nodes": []
},
{
"id": "aria-progressbar-name",
"impact": null,
"tags": [
"cat.aria",
"wcag2a",
"wcag111",
"EN-301-549",
"EN-9.1.1.1"
],
"description": "Ensure every ARIA progressbar node has an accessible name",
"help": "ARIA progressbar nodes must have an accessible name",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-progressbar-name?application=axeAPI",
"nodes": []
},
{
"id": "aria-required-attr",
"impact": null,
"tags": [
"cat.aria",
"wcag2a",
"wcag412",
"EN-301-549",
"EN-9.4.1.2"
],
"description": "Ensure elements with ARIA roles have all required ARIA attributes",
"help": "Required ARIA attributes must be provided",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-required-attr?application=axeAPI",
"nodes": []
},
{
"id": "aria-required-children",
"impact": null,
"tags": [
"cat.aria",
"wcag2a",
"wcag131",
"EN-301-549",
"EN-9.1.3.1"
],
"description": "Ensure elements with an ARIA role that require child roles contain them",
"help": "Certain ARIA roles must contain particular children",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-required-children?application=axeAPI",
"nodes": []
},
{
"id": "aria-required-parent",
"impact": null,
"tags": [
"cat.aria",
"wcag2a",
"wcag131",
"EN-301-549",
"EN-9.1.3.1"
],
"description": "Ensure elements with an ARIA role that require parent roles are contained by them",
"help": "Certain ARIA roles must be contained by particular parents",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-required-parent?application=axeAPI",
"nodes": []
},
{
"id": "aria-roles",
"impact": null,
"tags": [
"cat.aria",
"wcag2a",
"wcag412",
"EN-301-549",
"EN-9.4.1.2"
],
"description": "Ensure all elements with a role attribute use a valid value",
"help": "ARIA roles used must conform to valid values",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-roles?application=axeAPI",
"nodes": []
},
{
"id": "aria-toggle-field-name",
"impact": null,
"tags": [
"cat.aria",
"wcag2a",
"wcag412",
"TTv5",
"TT5.c",
"EN-301-549",
"EN-9.4.1.2",
"ACT"
],
"description": "Ensure every ARIA toggle field has an accessible name",
"help": "ARIA toggle fields must have an accessible name",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-toggle-field-name?application=axeAPI",
"nodes": []
},
{
"id": "aria-tooltip-name",
"impact": null,
"tags": [
"cat.aria",
"wcag2a",
"wcag412",
"EN-301-549",
"EN-9.4.1.2"
],
"description": "Ensure every ARIA tooltip node has an accessible name",
"help": "ARIA tooltip nodes must have an accessible name",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-tooltip-name?application=axeAPI",
"nodes": []
},
{
"id": "autocomplete-valid",
"impact": null,
"tags": [
"cat.forms",
"wcag21aa",
"wcag135",
"EN-301-549",
"EN-9.1.3.5",
"ACT"
],
"description": "Ensure the autocomplete attribute is correct and suitable for the form field",
"help": "autocomplete attribute must be used correctly",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/autocomplete-valid?application=axeAPI",
"nodes": []
},
{
"id": "blink",
"impact": null,
"tags": [
"cat.time-and-media",
"wcag2a",
"wcag222",
"section508",
"section508.22.j",
"TTv5",
"TT2.b",
"EN-301-549",
"EN-9.2.2.2"
],
"description": "Ensure <blink> elements are not used",
"help": "<blink> elements are deprecated and must not be used",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/blink?application=axeAPI",
"nodes": []
},
{
"id": "definition-list",
"impact": null,
"tags": [
"cat.structure",
"wcag2a",
"wcag131",
"EN-301-549",
"EN-9.1.3.1"
],
"description": "Ensure <dl> elements are structured correctly",
"help": "<dl> elements must only directly contain properly-ordered <dt> and <dd> groups, <script>, <template> or <div> elements",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/definition-list?application=axeAPI",
"nodes": []
},
{
"id": "dlitem",
"impact": null,
"tags": [
"cat.structure",
"wcag2a",
"wcag131",
"EN-301-549",
"EN-9.1.3.1"
],
"description": "Ensure <dt> and <dd> elements are contained by a <dl>",
"help": "<dt> and <dd> elements must be contained by a <dl>",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/dlitem?application=axeAPI",
"nodes": []
},
{
"id": "duplicate-id-aria",
"impact": null,
"tags": [
"cat.parsing",
"wcag2a",
"wcag412",
"EN-301-549",
"EN-9.4.1.2"
],
"description": "Ensure every id attribute value used in ARIA and in labels is unique",
"help": "IDs used in ARIA and labels must be unique",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/duplicate-id-aria?application=axeAPI",
"nodes": []
},
{
"id": "frame-focusable-content",
"impact": null,
"tags": [
"cat.keyboard",
"wcag2a",
"wcag211",
"TTv5",
"TT4.a",
"EN-301-549",
"EN-9.2.1.1"
],
"description": "Ensure <frame> and <iframe> elements with focusable content do not have tabindex=-1",
"help": "Frames with focusable content must not have tabindex=-1",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/frame-focusable-content?application=axeAPI",
"nodes": []
},
{
"id": "frame-title-unique",
"impact": null,
"tags": [
"cat.text-alternatives",
"wcag2a",
"wcag412",
"TTv5",
"TT12.d",
"EN-301-549",
"EN-9.4.1.2"
],
"description": "Ensure <iframe> and <frame> elements contain a unique title attribute",
"help": "Frames must have a unique title attribute",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/frame-title-unique?application=axeAPI",
"nodes": []
},
{
"id": "frame-title",
"impact": null,
"tags": [
"cat.text-alternatives",
"wcag2a",
"wcag412",
"section508",
"section508.22.i",
"TTv5",
"TT12.d",
"EN-301-549",
"EN-9.4.1.2"
],
"description": "Ensure <iframe> and <frame> elements have an accessible name",
"help": "Frames must have an accessible name",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/frame-title?application=axeAPI",
"nodes": []
},
{
"id": "html-xml-lang-mismatch",
"impact": null,
"tags": [
"cat.language",
"wcag2a",
"wcag311",
"EN-301-549",
"EN-9.3.1.1",
"ACT"
],
"description": "Ensure that HTML elements with both valid lang and xml:lang attributes agree on the base language of the page",
"help": "HTML elements with lang and xml:lang must have the same base language",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/html-xml-lang-mismatch?application=axeAPI",
"nodes": []
},
{
"id": "input-button-name",
"impact": null,
"tags": [
"cat.name-role-value",
"wcag2a",
"wcag412",
"section508",
"section508.22.a",
"TTv5",
"TT5.c",
"EN-301-549",
"EN-9.4.1.2",
"ACT"
],
"description": "Ensure input buttons have discernible text",
"help": "Input buttons must have discernible text",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/input-button-name?application=axeAPI",
"nodes": []
},
{
"id": "input-image-alt",
"impact": null,
"tags": [
"cat.text-alternatives",
"wcag2a",
"wcag111",
"wcag412",
"section508",
"section508.22.a",
"TTv5",
"TT7.a",
"EN-301-549",
"EN-9.1.1.1",
"EN-9.4.1.2",
"ACT"
],
"description": "Ensure <input type=\"image\"> elements have alternative text",
"help": "Image buttons must have alternative text",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/input-image-alt?application=axeAPI",
"nodes": []
},
{
"id": "marquee",
"impact": null,
"tags": [
"cat.parsing",
"wcag2a",
"wcag222",
"TTv5",
"TT2.b",
"EN-301-549",
"EN-9.2.2.2"
],
"description": "Ensure <marquee> elements are not used",
"help": "<marquee> elements are deprecated and must not be used",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/marquee?application=axeAPI",
"nodes": []
},
{
"id": "meta-refresh",
"impact": null,
"tags": [
"cat.time-and-media",
"wcag2a",
"wcag221",
"TTv5",
"TT8.a",
"EN-301-549",
"EN-9.2.2.1"
],
"description": "Ensure <meta http-equiv=\"refresh\"> is not used for delayed refresh",
"help": "Delayed refresh under 20 hours must not be used",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/meta-refresh?application=axeAPI",
"nodes": []
},
{
"id": "object-alt",
"impact": null,
"tags": [
"cat.text-alternatives",
"wcag2a",
"wcag111",
"section508",
"section508.22.a",
"EN-301-549",
"EN-9.1.1.1"
],
"description": "Ensure <object> elements have alternative text",
"help": "<object> elements must have alternative text",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/object-alt?application=axeAPI",
"nodes": []
},
{
"id": "role-img-alt",
"impact": null,
"tags": [
"cat.text-alternatives",
"wcag2a",
"wcag111",
"section508",
"section508.22.a",
"TTv5",
"TT7.a",
"EN-301-549",
"EN-9.1.1.1",
"ACT"
],
"description": "Ensure [role=\"img\"] elements have alternative text",
"help": "[role=\"img\"] elements must have an alternative text",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/role-img-alt?application=axeAPI",
"nodes": []
},
{
"id": "scrollable-region-focusable",
"impact": null,
"tags": [
"cat.keyboard",
"wcag2a",
"wcag211",
"wcag213",
"TTv5",
"TT4.a",
"EN-301-549",
"EN-9.2.1.1",
"EN-9.2.1.3"
],
"description": "Ensure elements that have scrollable content are accessible by keyboard",
"help": "Scrollable region must have keyboard access",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/scrollable-region-focusable?application=axeAPI",
"nodes": []
},
{
"id": "select-name",
"impact": null,
"tags": [
"cat.forms",
"wcag2a",
"wcag412",
"section508",
"section508.22.n",
"TTv5",
"TT5.c",
"EN-301-549",
"EN-9.4.1.2",
"ACT"
],
"description": "Ensure select element has an accessible name",
"help": "Select element must have an accessible name",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/select-name?application=axeAPI",
"nodes": []
},
{
"id": "server-side-image-map",
"impact": null,
"tags": [
"cat.text-alternatives",
"wcag2a",
"wcag211",
"section508",
"section508.22.f",
"TTv5",
"TT4.a",
"EN-301-549",
"EN-9.2.1.1"
],
"description": "Ensure that server-side image maps are not used",
"help": "Server-side image maps must not be used",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/server-side-image-map?application=axeAPI",
"nodes": []
},
{
"id": "summary-name",
"impact": null,
"tags": [
"cat.name-role-value",
"wcag2a",
"wcag412",
"section508",
"section508.22.a",
"TTv5",
"TT6.a",
"EN-301-549",
"EN-9.4.1.2"
],
"description": "Ensure summary elements have discernible text",
"help": "Summary elements must have discernible text",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/summary-name?application=axeAPI",
"nodes": []
},
{
"id": "svg-img-alt",
"impact": null,
"tags": [
"cat.text-alternatives",
"wcag2a",
"wcag111",
"section508",
"section508.22.a",
"TTv5",
"TT7.a",
"EN-301-549",
"EN-9.1.1.1",
"ACT"
],
"description": "Ensure <svg> elements with an img, graphics-document or graphics-symbol role have an accessible text",
"help": "<svg> elements with an img role must have an alternative text",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/svg-img-alt?application=axeAPI",
"nodes": []
},
{
"id": "td-headers-attr",
"impact": null,
"tags": [
"cat.tables",
"wcag2a",
"wcag131",
"section508",
"section508.22.g",
"TTv5",
"TT14.b",
"EN-301-549",
"EN-9.1.3.1"
],
"description": "Ensure that each cell in a table that uses the headers attribute refers only to other cells in that table",
"help": "Table cells that use the headers attribute must only refer to cells in the same table",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/td-headers-attr?application=axeAPI",
"nodes": []
},
{
"id": "th-has-data-cells",
"impact": null,
"tags": [
"cat.tables",
"wcag2a",
"wcag131",
"section508",
"section508.22.g",
"TTv5",
"TT14.b",
"EN-301-549",
"EN-9.1.3.1"
],
"description": "Ensure that <th> elements and elements with role=columnheader/rowheader have data cells they describe",
"help": "Table headers in a data table must refer to data cells",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/th-has-data-cells?application=axeAPI",
"nodes": []
},
{
"id": "valid-lang",
"impact": null,
"tags": [
"cat.language",
"wcag2aa",
"wcag312",
"TTv5",
"TT11.b",
"EN-301-549",
"EN-9.3.1.2",
"ACT"
],
"description": "Ensure lang attributes have valid values",
"help": "lang attribute must have a valid value",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/valid-lang?application=axeAPI",
"nodes": []
},
{
"id": "video-caption",
"impact": null,
"tags": [
"cat.text-alternatives",
"wcag2a",
"wcag122",
"section508",
"section508.22.a",
"TTv5",
"TT17.a",
"EN-301-549",
"EN-9.1.2.2"
],
"description": "Ensure <video> elements have captions",
"help": "<video> elements must have captions",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/video-caption?application=axeAPI",
"nodes": []
},
{
"id": "no-autoplay-audio",
"impact": null,
"tags": [
"cat.time-and-media",
"wcag2a",
"wcag142",
"TTv5",
"TT2.a",
"EN-301-549",
"EN-9.1.4.2",
"ACT"
],
"description": "Ensure <video> or <audio> elements do not autoplay audio for more than 3 seconds without a control mechanism to stop or mute the audio",
"help": "<video> or <audio> elements must not play automatically",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/no-autoplay-audio?application=axeAPI",
"nodes": []
}
],
"passes": [
{
"id": "aria-allowed-attr",
"impact": null,
"tags": [
"cat.aria",
"wcag2a",
"wcag412",
"EN-301-549",
"EN-9.4.1.2"
],
"description": "Ensure an element's role supports its ARIA attributes",
"help": "Elements must only use supported ARIA attributes",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-allowed-attr?application=axeAPI",
"nodes": [
{
"any": [],
"all": [
{
"id": "aria-allowed-attr",
"data": null,
"relatedNodes": [],
"impact": "critical",
"message": "ARIA attributes are used correctly for the defined role"
}
],
"none": [
{
"id": "aria-unsupported-attr",
"data": null,
"relatedNodes": [],
"impact": "critical",
"message": "ARIA attribute is supported"
}
],
"impact": null,
"html": "<a class=\"brand\" href=\"#top\" aria-label=\"Ascendra home\">",
"target": [
".brand"
]
}
]
},
{
"id": "aria-conditional-attr",
"impact": null,
"tags": [
"cat.aria",
"wcag2a",
"wcag412",
"EN-301-549",
"EN-9.4.1.2"
],
"description": "Ensure ARIA attributes are used as described in the specification of the element's role",
"help": "ARIA attributes must be used as specified for the element's role",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-conditional-attr?application=axeAPI",
"nodes": [
{
"any": [],
"all": [
{
"id": "aria-conditional-attr",
"data": null,
"relatedNodes": [],
"impact": "serious",
"message": "ARIA attribute is allowed"
}
],
"none": [],
"impact": null,
"html": "<a class=\"brand\" href=\"#top\" aria-label=\"Ascendra home\">",
"target": [
".brand"
]
}
]
},
{
"id": "aria-hidden-body",
"impact": null,
"tags": [
"cat.aria",
"wcag2a",
"wcag131",
"wcag412",
"EN-301-549",
"EN-9.1.3.1",
"EN-9.4.1.2"
],
"description": "Ensure aria-hidden=\"true\" is not present on the document body.",
"help": "aria-hidden=\"true\" must not be present on the document body",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-hidden-body?application=axeAPI",
"nodes": [
{
"any": [
{
"id": "aria-hidden-body",
"data": null,
"relatedNodes": [],
"impact": "critical",
"message": "No aria-hidden attribute is present on document body"
}
],
"all": [],
"none": [],
"impact": null,
"html": "<body>",
"target": [
"body"
]
}
]
},
{
"id": "aria-prohibited-attr",
"impact": null,
"tags": [
"cat.aria",
"wcag2a",
"wcag412",
"EN-301-549",
"EN-9.4.1.2"
],
"description": "Ensure ARIA attributes are not prohibited for an element's role",
"help": "Elements must only use permitted ARIA attributes",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-prohibited-attr?application=axeAPI",
"nodes": [
{
"any": [],
"all": [],
"none": [
{
"id": "aria-prohibited-attr",
"data": null,
"relatedNodes": [],
"impact": "serious",
"message": "ARIA attribute is allowed"
}
],
"impact": null,
"html": "<a class=\"brand\" href=\"#top\" aria-label=\"Ascendra home\">",
"target": [
".brand"
]
}
]
},
{
"id": "aria-valid-attr-value",
"impact": null,
"tags": [
"cat.aria",
"wcag2a",
"wcag412",
"EN-301-549",
"EN-9.4.1.2"
],
"description": "Ensure all ARIA attributes have valid values",
"help": "ARIA attributes must conform to valid values",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-valid-attr-value?application=axeAPI",
"nodes": [
{
"any": [],
"all": [
{
"id": "aria-valid-attr-value",
"data": null,
"relatedNodes": [],
"impact": "critical",
"message": "ARIA attribute values are valid"
},
{
"id": "aria-errormessage",
"data": null,
"relatedNodes": [],
"impact": "critical",
"message": "aria-errormessage exists and references elements visible to screen readers that use a supported aria-errormessage technique"
},
{
"id": "aria-level",
"data": null,
"relatedNodes": [],
"impact": "critical",
"message": "aria-level values are valid"
}
],
"none": [],
"impact": null,
"html": "<a class=\"brand\" href=\"#top\" aria-label=\"Ascendra home\">",
"target": [
".brand"
]
}
]
},
{
"id": "aria-valid-attr",
"impact": null,
"tags": [
"cat.aria",
"wcag2a",
"wcag412",
"EN-301-549",
"EN-9.4.1.2"
],
"description": "Ensure attributes that begin with aria- are valid ARIA attributes",
"help": "ARIA attributes must conform to valid names",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/aria-valid-attr?application=axeAPI",
"nodes": [
{
"any": [
{
"id": "aria-valid-attr",
"data": null,
"relatedNodes": [],
"impact": "critical",
"message": "ARIA attribute name is valid"
}
],
"all": [],
"none": [],
"impact": null,
"html": "<a class=\"brand\" href=\"#top\" aria-label=\"Ascendra home\">",
"target": [
".brand"
]
}
]
},
{
"id": "avoid-inline-spacing",
"impact": null,
"tags": [
"cat.structure",
"wcag21aa",
"wcag1412",
"EN-301-549",
"EN-9.1.4.12",
"ACT"
],
"description": "Ensure that text spacing set through style attributes can be adjusted with custom stylesheets",
"help": "Inline text spacing must be adjustable with custom stylesheets",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/avoid-inline-spacing?application=axeAPI",
"nodes": [
{
"any": [],
"all": [
{
"id": "important-letter-spacing",
"data": null,
"relatedNodes": [],
"impact": "serious",
"message": "Letter-spacing in the style attribute is not set to !important, or meets the minimum"
},
{
"id": "important-word-spacing",
"data": null,
"relatedNodes": [],
"impact": "serious",
"message": "word-spacing in the style attribute is not set to !important, or meets the minimum"
},
{
"id": "important-line-height",
"data": null,
"relatedNodes": [],
"impact": "serious",
"message": "line-height in the style attribute is not set to !important, or meets the minimum"
}
],
"none": [],
"impact": null,
"html": "<strong style=\"color:#fff\">Live:</strong>",
"target": [
"div:nth-child(1) > strong"
]
}
]
},
{
"id": "button-name",
"impact": null,
"tags": [
"cat.name-role-value",
"wcag2a",
"wcag412",
"section508",
"section508.22.a",
"TTv5",
"TT6.a",
"EN-301-549",
"EN-9.4.1.2",
"ACT"
],
"description": "Ensure buttons have discernible text",
"help": "Buttons must have discernible text",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/button-name?application=axeAPI",
"nodes": [
{
"any": [
{
"id": "button-has-visible-text",
"data": null,
"relatedNodes": [],
"impact": "critical",
"message": "Element has inner text that is visible to screen readers"
}
],
"all": [],
"none": [],
"impact": null,
"html": "<button class=\"btn btn-teal\" onclick=\"doSearch()\">Find Companies</button>",
"target": [
"button[onclick=\"doSearch()\"]"
]
}
]
},
{
"id": "bypass",
"impact": null,
"tags": [
"cat.keyboard",
"wcag2a",
"wcag241",
"section508",
"section508.22.o",
"TTv5",
"TT9.a",
"EN-301-549",
"EN-9.2.4.1"
],
"description": "Ensure each page has at least one mechanism for a user to bypass navigation and jump straight to the content",
"help": "Page must have means to bypass repeated blocks",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/bypass?application=axeAPI",
"nodes": [
{
"any": [
{
"id": "internal-link-present",
"data": null,
"relatedNodes": [],
"impact": "serious",
"message": "Valid skip link found"
},
{
"id": "header-present",
"data": null,
"relatedNodes": [
{
"html": "<h1>Find work that <em>moves you forward.</em></h1>",
"target": [
"h1"
]
},
{
"html": "<h2>Industry trends, decoded for your next move</h2>",
"target": [
"#market > .container > .section-head > h2"
]
},
{
"html": "<h3 style=\"font-family:Inter;font-weight:800;font-size:20px\">Where demand is surging (YoY growth)</h3>",
"target": [
".market-left > h3"
]
},
{
"html": "<h3>Companies hiring for potential</h3>",
"target": [
"#companies > h3"
]
},
{
"html": "<h2>Hand-vetted jobs worth your time</h2>",
"target": [
"#jobs > .container > .section-head > h2"
]
},
{
"html": "<h4 style=\"color:#fff\">Get only roles that fit \ud83c\udfaf</h4>",
"target": [
".pref-box > h4"
]
},
{
"html": "<h4>\ud83d\udcc8 This week's hiring trends</h4>",
"target": [
".side-card:nth-child(2) > h4"
]
},
{
"html": "<h4>\ud83d\udcf0 Recent posts</h4>",
"target": [
".side-card:nth-child(3) > h4"
]
},
{
"html": "<h2>Not sure what's next? Let's map it.</h2>",
"target": [
".path-inner > div:nth-child(1) > h2"
]
},
{
"html": "<h3 style=\"font-size:22px;margin-top:6px\">What energizes you most at work?</h3>",
"target": [
"div[data-step=\"1\"] > h3"
]
},
{
"html": "<h3>Translate your experience</h3>",
"target": [
".feature.card:nth-child(1) > h3"
]
},
{
"html": "<h3>Networking without cringe</h3>",
"target": [
".feature.card:nth-child(2) > h3"
]
},
{
"html": "<h3>Grow on the job</h3>",
"target": [
".feature.card:nth-child(3) > h3"
]
},
{
"html": "<h2 style=\"font-size:42px;margin:16px 0\">Walk in calm. Walk out with an offer.</h2>",
"target": [
".grid-2 > div:nth-child(1) > h2"
]
},
{
"html": "<h2>Real people. Real pivots. Real offers.</h2>",
"target": [
".testimonials > .container > .section-head > h2"
]
},
{
"html": "<h2>Learn the plays behind the promotions</h2>",
"target": [
"#blog > .container > .section-head > h2"
]
},
{
"html": "<h3>7 transferable skills hiring managers scan for in 6 seconds</h3>",
"target": [
".blog-card:nth-child(1) > .card-pad > h3"
]
},
{
"html": "<h3>The 15-minute networking system for introverts</h3>",
"target": [
".blog-card:nth-child(2) > .card-pad > h3"
]
},
{
"html": "<h3>\u201cTell me about yourself\u201d \u2014 a formula that always lands</h3>",
"target": [
".blog-card:nth-child(3) > .card-pad > h3"
]
},
{
"html": "<h3 style=\"font-size:26px;margin-bottom:14px\">Frequently asked questions</h3>",
"target": [
".grid-2 > div:nth-child(1) > h3"
]
},
{
"html": "<h2>Get 5 jobs in your inbox tomorrow.</h2>",
"target": [
".cta-banner > div:nth-child(1) > h2"
]
},
{
"html": "<h4>Job Seekers</h4>",
"target": [
".footer-grid > div:nth-child(2) > h4"
]
},
{
"html": "<h4>Resources</h4>",
"target": [
".footer-grid > div:nth-child(3) > h4"
]
},
{
"html": "<h4>Company</h4>",
"target": [
"div:nth-child(4) > h4"
]
}
],
"impact": "serious",
"message": "Page has a heading"
},
{
"id": "landmark",
"data": null,
"relatedNodes": [
{
"html": "<main id=\"top\">",
"target": [
"#top"
]
}
],
"impact": "serious",
"message": "Page has a landmark region"
}
],
"all": [],
"none": [],
"impact": null,
"html": "<html lang=\"en\">",
"target": [
"html"
]
}
]
},
{
"id": "color-contrast",
"impact": "serious",
"tags": [
"cat.color",
"wcag2aa",
"wcag143",
"TTv5",
"TT13.c",
"EN-301-549",
"EN-9.1.4.3",
"ACT"
],
"description": "Ensure the contrast between foreground and background colors meets WCAG 2 AA minimum contrast ratio thresholds",
"help": "Elements must meet minimum color contrast ratio thresholds",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/color-contrast?application=axeAPI",
"nodes": [
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#d6ddf0",
"bgColor": "#0f2342",
"contrastRatio": 11.54,
"fontSize": "9.8pt (13px)",
"fontWeight": "normal",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [],
"impact": "serious",
"message": "Element has sufficient color contrast of 11.54"
}
],
"all": [],
"none": [],
"impact": null,
"html": "<div><span class=\"dot\"></span><strong style=\"color:#fff\">Live:</strong> 12,408 new roles this week \u00b7 <a href=\"#market\">2026 Salary Report is out \u2192</a></div>",
"target": [
".topbar-inner > div:nth-child(1)"
]
}
]
},
{
"id": "document-title",
"impact": null,
"tags": [
"cat.text-alternatives",
"wcag2a",
"wcag242",
"TTv5",
"TT12.a",
"EN-301-549",
"EN-9.2.4.2",
"ACT"
],
"description": "Ensure each HTML document contains a non-empty <title> element",
"help": "Documents must have <title> element to aid in navigation",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/document-title?application=axeAPI",
"nodes": [
{
"any": [
{
"id": "doc-has-title",
"data": null,
"relatedNodes": [],
"impact": "serious",
"message": "Document has a non-empty <title> element"
}
],
"all": [],
"none": [],
"impact": null,
"html": "<html lang=\"en\">",
"target": [
"html"
]
}
]
},
{
"id": "form-field-multiple-labels",
"impact": null,
"tags": [
"cat.forms",
"wcag2a",
"wcag332",
"TTv5",
"TT5.c",
"EN-301-549",
"EN-9.3.3.2"
],
"description": "Ensure form field does not have multiple label elements",
"help": "Form field must not have multiple label elements",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/form-field-multiple-labels?application=axeAPI",
"nodes": [
{
"any": [],
"all": [],
"none": [
{
"id": "multiple-label",
"data": null,
"relatedNodes": [
{
"html": "<label class=\"field\">\ud83d\udd0d <input type=\"text\" id=\"kw\" placeholder=\"Job title, skill, or company\"></label>",
"target": [
"label:nth-child(1)"
]
}
],
"impact": "moderate",
"message": "Form field does not have multiple label elements"
}
],
"impact": null,
"html": "<input type=\"text\" id=\"kw\" placeholder=\"Job title, skill, or company\">",
"target": [
"#kw"
]
}
]
},
{
"id": "html-has-lang",
"impact": null,
"tags": [
"cat.language",
"wcag2a",
"wcag311",
"TTv5",
"TT11.a",
"EN-301-549",
"EN-9.3.1.1",
"ACT"
],
"description": "Ensure every HTML document has a lang attribute",
"help": "<html> element must have a lang attribute",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/html-has-lang?application=axeAPI",
"nodes": [
{
"any": [
{
"id": "has-lang",
"data": null,
"relatedNodes": [],
"impact": "serious",
"message": "The <html> element has a lang attribute"
}
],
"all": [],
"none": [],
"impact": null,
"html": "<html lang=\"en\">",
"target": [
"html"
]
}
]
},
{
"id": "html-lang-valid",
"impact": null,
"tags": [
"cat.language",
"wcag2a",
"wcag311",
"TTv5",
"TT11.a",
"EN-301-549",
"EN-9.3.1.1",
"ACT"
],
"description": "Ensure the lang attribute of the <html> element has a valid value",
"help": "<html> element must have a valid value for the lang attribute",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/html-lang-valid?application=axeAPI",
"nodes": [
{
"any": [],
"all": [],
"none": [
{
"id": "valid-lang",
"data": null,
"relatedNodes": [],
"impact": "serious",
"message": "Value of lang attribute is included in the list of valid languages"
}
],
"impact": null,
"html": "<html lang=\"en\">",
"target": [
"html"
]
}
]
},
{
"id": "image-alt",
"impact": null,
"tags": [
"cat.text-alternatives",
"wcag2a",
"wcag111",
"section508",
"section508.22.a",
"TTv5",
"TT7.a",
"TT7.b",
"EN-301-549",
"EN-9.1.1.1",
"ACT"
],
"description": "Ensure <img> elements have alternative text or a role of none or presentation",
"help": "Images must have alternative text",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/image-alt?application=axeAPI",
"nodes": [
{
"any": [
{
"id": "has-alt",
"data": null,
"relatedNodes": [],
"impact": "critical",
"message": "Element has an alt attribute"
}
],
"all": [],
"none": [
{
"id": "alt-space-value",
"data": null,
"relatedNodes": [],
"impact": "critical",
"message": "Element has a valid alt attribute value"
}
],
"impact": null,
"html": "<img src=\"https://placehold.co/120x120/0F2342/FFFFFF?text=A&font=poppins\" alt=\"Ascendra logo\">",
"target": [
".brand > img[alt=\"Ascendra logo\"]"
]
}
]
},
{
"id": "label",
"impact": null,
"tags": [
"cat.forms",
"wcag2a",
"wcag412",
"section508",
"section508.22.n",
"TTv5",
"TT5.c",
"EN-301-549",
"EN-9.4.1.2",
"ACT"
],
"description": "Ensure every form element has a label",
"help": "Form elements must have labels",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/label?application=axeAPI",
"nodes": [
{
"any": [
{
"id": "implicit-label",
"data": {
"implicitLabel": "\ud83d\udd0d Job title, skill, or company"
},
"relatedNodes": [
{
"html": "<label class=\"field\">\ud83d\udd0d <input type=\"text\" id=\"kw\" placeholder=\"Job title, skill, or company\"></label>",
"target": [
"label:nth-child(1)"
]
}
],
"impact": "critical",
"message": "Element has an implicit (wrapped) <label>"
},
{
"id": "non-empty-placeholder",
"data": null,
"relatedNodes": [],
"impact": "critical",
"message": "Element has a placeholder attribute"
}
],
"all": [],
"none": [
{
"id": "hidden-explicit-label",
"data": null,
"relatedNodes": [],
"impact": "critical",
"message": "Form element has a visible explicit <label>"
}
],
"impact": null,
"html": "<input type=\"text\" id=\"kw\" placeholder=\"Job title, skill, or company\">",
"target": [
"#kw"
]
}
]
},
{
"id": "link-in-text-block",
"impact": null,
"tags": [
"cat.color",
"wcag2a",
"wcag141",
"TTv5",
"TT13.a",
"EN-301-549",
"EN-9.1.4.1"
],
"description": "Ensure links are distinguished from surrounding text in a way that does not rely on color",
"help": "Links must be distinguishable without relying on color",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/link-in-text-block?application=axeAPI",
"nodes": [
{
"any": [
{
"id": "link-in-text-block-style",
"data": null,
"relatedNodes": [
{
"html": "<div><span class=\"dot\"></span><strong style=\"color:#fff\">Live:</strong> 12,408 new roles this week \u00b7 <a href=\"#market\">2026 Salary Report is out \u2192</a></div>",
"target": [
".topbar-inner > div:nth-child(1)"
]
}
],
"impact": "serious",
"message": "Links can be distinguished from surrounding text by visual styling"
}
],
"all": [],
"none": [],
"impact": null,
"html": "<a href=\"#market\">2026 Salary Report is out \u2192</a>",
"target": [
"div:nth-child(1) > a[href$=\"#market\"]"
]
}
]
},
{
"id": "link-name",
"impact": null,
"tags": [
"cat.name-role-value",
"wcag2a",
"wcag244",
"wcag412",
"section508",
"section508.22.a",
"TTv5",
"TT6.a",
"EN-301-549",
"EN-9.2.4.4",
"EN-9.4.1.2",
"ACT"
],
"description": "Ensure links have discernible text",
"help": "Links must have discernible text",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/link-name?application=axeAPI",
"nodes": [
{
"any": [
{
"id": "has-visible-text",
"data": null,
"relatedNodes": [],
"impact": "serious",
"message": "Element has text that is visible to screen readers"
}
],
"all": [],
"none": [
{
"id": "focusable-no-name",
"data": null,
"relatedNodes": [],
"impact": "serious",
"message": "Element is not in tab order or has accessible text"
}
],
"impact": null,
"html": "<a href=\"#market\">2026 Salary Report is out \u2192</a>",
"target": [
"div:nth-child(1) > a[href$=\"#market\"]"
]
}
]
},
{
"id": "list",
"impact": null,
"tags": [
"cat.structure",
"wcag2a",
"wcag131",
"EN-301-549",
"EN-9.1.3.1"
],
"description": "Ensure that lists are structured correctly",
"help": "<ul> and <ol> must only directly contain <li>, <script> or <template> elements",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/list?application=axeAPI",
"nodes": [
{
"any": [],
"all": [],
"none": [
{
"id": "only-listitems",
"data": null,
"relatedNodes": [],
"impact": "serious",
"message": "List element only has direct children that are allowed inside <li> elements"
}
],
"impact": null,
"html": "<ul>",
"target": [
".side-card:nth-child(2) > ul"
]
}
]
},
{
"id": "listitem",
"impact": null,
"tags": [
"cat.structure",
"wcag2a",
"wcag131",
"EN-301-549",
"EN-9.1.3.1"
],
"description": "Ensure <li> elements are used semantically",
"help": "<li> elements must be contained in a <ul> or <ol>",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/listitem?application=axeAPI",
"nodes": [
{
"any": [
{
"id": "listitem",
"data": null,
"relatedNodes": [],
"impact": "serious",
"message": "List item has a <ul>, <ol> or role=\"list\" parent element"
}
],
"all": [],
"none": [],
"impact": null,
"html": "<li>\u2705 <span><b>Skills-based hiring up 34%</b><br><span style=\"color:var(--muted)\">Resumes without degrees getting 2x callbacks.</span></span></li>",
"target": [
".side-card:nth-child(2) > ul > li:nth-child(1)"
]
}
]
},
{
"id": "meta-viewport",
"impact": null,
"tags": [
"cat.sensory-and-visual-cues",
"wcag2aa",
"wcag144",
"EN-301-549",
"EN-9.1.4.4",
"ACT"
],
"description": "Ensure <meta name=\"viewport\"> does not disable text scaling and zooming",
"help": "Zooming and scaling must not be disabled",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/meta-viewport?application=axeAPI",
"nodes": [
{
"any": [
{
"id": "meta-viewport",
"data": null,
"relatedNodes": [],
"impact": "critical",
"message": "<meta> tag does not disable zooming on mobile devices"
}
],
"all": [],
"none": [],
"impact": null,
"html": "<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">",
"target": [
"meta[name=\"viewport\"]"
]
}
]
},
{
"id": "nested-interactive",
"impact": null,
"tags": [
"cat.keyboard",
"wcag2a",
"wcag412",
"TTv5",
"TT6.a",
"EN-301-549",
"EN-9.4.1.2"
],
"description": "Ensure interactive controls are not nested as they are not always announced by screen readers or can cause focus problems for assistive technologies",
"help": "Interactive controls must not be nested",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/nested-interactive?application=axeAPI",
"nodes": [
{
"any": [
{
"id": "no-focusable-content",
"data": null,
"relatedNodes": [],
"impact": "serious",
"message": "Element does not have focusable descendants"
}
],
"all": [],
"none": [],
"impact": null,
"html": "<img src=\"https://placehold.co/120x120/0F2342/FFFFFF?text=A&font=poppins\" alt=\"Ascendra logo\">",
"target": [
".brand > img[alt=\"Ascendra logo\"]"
]
}
]
},
{
"id": "target-size",
"impact": null,
"tags": [
"cat.sensory-and-visual-cues",
"wcag22aa",
"wcag258"
],
"description": "Ensure touch targets have sufficient size and space",
"help": "All touch targets must be 24px large, or leave sufficient space",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/target-size?application=axeAPI",
"nodes": [
{
"any": [
{
"id": "target-offset",
"data": {
"closestOffset": 24,
"minOffset": 24
},
"relatedNodes": [],
"impact": "serious",
"message": "Target has sufficient space from its closest neighbors. Safe clickable space has a diameter of 24px which is at least 24px."
}
],
"all": [],
"none": [],
"impact": null,
"html": "<a href=\"#jobs\">For Employers</a>",
"target": [
".topbar-inner > div:nth-child(2) > a[href$=\"#jobs\"]"
]
}
]
}
],
"incomplete": [
{
"id": "color-contrast",
"impact": "serious",
"tags": [
"cat.color",
"wcag2aa",
"wcag143",
"TTv5",
"TT13.c",
"EN-301-549",
"EN-9.1.4.3",
"ACT"
],
"description": "Ensure the contrast between foreground and background colors meets WCAG 2 AA minimum contrast ratio thresholds",
"help": "Elements must meet minimum color contrast ratio thresholds",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/color-contrast?application=axeAPI",
"nodes": [
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": null,
"bgColor": null,
"contrastRatio": 0,
"fontSize": "43.5pt (58px)",
"fontWeight": "bold",
"messageKey": "bgGradient",
"expectedContrastRatio": "3:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<div class=\"hero\">",
"target": [
".hero"
]
}
],
"impact": "serious",
"message": "Element's background color could not be determined due to a background gradient"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<h1>Find work that <em>moves you forward.</em></h1>",
"target": [
"h1"
],
"failureSummary": "Fix any of the following:\n Element's background color could not be determined due to a background gradient"
}
]
}
],
"violations": [
{
"id": "color-contrast",
"impact": "serious",
"tags": [
"cat.color",
"wcag2aa",
"wcag143",
"TTv5",
"TT13.c",
"EN-301-549",
"EN-9.1.4.3",
"ACT"
],
"description": "Ensure the contrast between foreground and background colors meets WCAG 2 AA minimum contrast ratio thresholds",
"help": "Elements must meet minimum color contrast ratio thresholds",
"helpUrl": "https://dequeuniversity.com/rules/axe/4.10/color-contrast?application=axeAPI",
"nodes": [
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#00967e",
"bgColor": "#dff7f1",
"contrastRatio": 3.3,
"fontSize": "9.0pt (12px)",
"fontWeight": "bold",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<span class=\"eyebrow\">\u2605 #1 Rated Career Platform 2026</span>",
"target": [
".hero-grid > div:nth-child(1) > .eyebrow"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 3.3 (foreground color: #00967e, background color: #dff7f1, font size: 9.0pt (12px), font weight: bold). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span class=\"eyebrow\">\u2605 #1 Rated Career Platform 2026</span>",
"target": [
".hero-grid > div:nth-child(1) > .eyebrow"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 3.3 (foreground color: #00967e, background color: #dff7f1, font size: 9.0pt (12px), font weight: bold). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#b9c4de",
"bgColor": "#3dffc2",
"contrastRatio": 1.35,
"fontSize": "9.8pt (13px)",
"fontWeight": "bold",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<span class=\"badge-up\">+210 roles</span>",
"target": [
".trend:nth-child(1) > .badge-up"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 1.35 (foreground color: #b9c4de, background color: #3dffc2, font size: 9.8pt (13px), font weight: bold). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span class=\"badge-up\">+210 roles</span>",
"target": [
".trend:nth-child(1) > .badge-up"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 1.35 (foreground color: #b9c4de, background color: #3dffc2, font size: 9.8pt (13px), font weight: bold). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#b9c4de",
"bgColor": "#3dffc2",
"contrastRatio": 1.35,
"fontSize": "9.8pt (13px)",
"fontWeight": "bold",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<span class=\"badge-up\">+164 roles</span>",
"target": [
".trend:nth-child(2) > .badge-up"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 1.35 (foreground color: #b9c4de, background color: #3dffc2, font size: 9.8pt (13px), font weight: bold). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span class=\"badge-up\">+164 roles</span>",
"target": [
".trend:nth-child(2) > .badge-up"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 1.35 (foreground color: #b9c4de, background color: #3dffc2, font size: 9.8pt (13px), font weight: bold). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#b9c4de",
"bgColor": "#3dffc2",
"contrastRatio": 1.35,
"fontSize": "9.8pt (13px)",
"fontWeight": "bold",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<span class=\"badge-up\">+98 roles</span>",
"target": [
".trend:nth-child(3) > .badge-up"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 1.35 (foreground color: #b9c4de, background color: #3dffc2, font size: 9.8pt (13px), font weight: bold). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span class=\"badge-up\">+98 roles</span>",
"target": [
".trend:nth-child(3) > .badge-up"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 1.35 (foreground color: #b9c4de, background color: #3dffc2, font size: 9.8pt (13px), font weight: bold). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#00967e",
"bgColor": "#dff7f1",
"contrastRatio": 3.3,
"fontSize": "9.0pt (12px)",
"fontWeight": "bold",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<span class=\"eyebrow\">Featured Positions \u2022 Updated Hourly</span>",
"target": [
"#jobs > .container > .section-head > .eyebrow"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 3.3 (foreground color: #00967e, background color: #dff7f1, font size: 9.0pt (12px), font weight: bold). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span class=\"eyebrow\">Featured Positions \u2022 Updated Hourly</span>",
"target": [
"#jobs > .container > .section-head > .eyebrow"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 3.3 (foreground color: #00967e, background color: #dff7f1, font size: 9.0pt (12px), font weight: bold). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#00967e",
"bgColor": "#ffffff",
"contrastRatio": 3.7,
"fontSize": "12.0pt (16px)",
"fontWeight": "bold",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<div class=\"card feature\">",
"target": [
".feature.card:nth-child(1)"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 3.7 (foreground color: #00967e, background color: #ffffff, font size: 12.0pt (16px), font weight: bold). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<a href=\"#prep\" style=\"font-weight:800;color:var(--teal-dark)\">Try the translator \u2192</a>",
"target": [
".feature.card:nth-child(1) > a[href$=\"#prep\"]"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 3.7 (foreground color: #00967e, background color: #ffffff, font size: 12.0pt (16px), font weight: bold). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#00967e",
"bgColor": "#ffffff",
"contrastRatio": 3.7,
"fontSize": "12.0pt (16px)",
"fontWeight": "bold",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<div class=\"card feature\">",
"target": [
".feature.card:nth-child(2)"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 3.7 (foreground color: #00967e, background color: #ffffff, font size: 12.0pt (16px), font weight: bold). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<a href=\"#contact\" style=\"font-weight:800;color:var(--teal-dark)\">Join next meetup \u2192</a>",
"target": [
".feature.card:nth-child(2) > a[href$=\"#contact\"]"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 3.7 (foreground color: #00967e, background color: #ffffff, font size: 12.0pt (16px), font weight: bold). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#00967e",
"bgColor": "#ffffff",
"contrastRatio": 3.7,
"fontSize": "12.0pt (16px)",
"fontWeight": "bold",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<div class=\"card feature\">",
"target": [
".feature.card:nth-child(3)"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 3.7 (foreground color: #00967e, background color: #ffffff, font size: 12.0pt (16px), font weight: bold). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<a href=\"#blog\" style=\"font-weight:800;color:var(--teal-dark)\">Explore courses \u2192</a>",
"target": [
".feature.card:nth-child(3) > a[href$=\"#blog\"]"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 3.7 (foreground color: #00967e, background color: #ffffff, font size: 12.0pt (16px), font weight: bold). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#00967e",
"bgColor": "#dff7f1",
"contrastRatio": 3.3,
"fontSize": "9.0pt (12px)",
"fontWeight": "bold",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<span class=\"eyebrow\">Interview Prep \u2022 Resume Tips \u2022 Coaching</span>",
"target": [
".grid-2 > div:nth-child(1) > .eyebrow"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 3.3 (foreground color: #00967e, background color: #dff7f1, font size: 9.0pt (12px), font weight: bold). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span class=\"eyebrow\">Interview Prep \u2022 Resume Tips \u2022 Coaching</span>",
"target": [
".grid-2 > div:nth-child(1) > .eyebrow"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 3.3 (foreground color: #00967e, background color: #dff7f1, font size: 9.0pt (12px), font weight: bold). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#00967e",
"bgColor": "#dff7f1",
"contrastRatio": 3.3,
"fontSize": "9.0pt (12px)",
"fontWeight": "bold",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<span class=\"eyebrow\">Success Stories \u2022 38,000+ Reviews</span>",
"target": [
".testimonials > .container > .section-head > .eyebrow"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 3.3 (foreground color: #00967e, background color: #dff7f1, font size: 9.0pt (12px), font weight: bold). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span class=\"eyebrow\">Success Stories \u2022 38,000+ Reviews</span>",
"target": [
".testimonials > .container > .section-head > .eyebrow"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 3.3 (foreground color: #00967e, background color: #dff7f1, font size: 9.0pt (12px), font weight: bold). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#00967e",
"bgColor": "#dff7f1",
"contrastRatio": 3.3,
"fontSize": "9.0pt (12px)",
"fontWeight": "bold",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<span class=\"eyebrow\">Blog \u2022 Career Advice That Works</span>",
"target": [
"#blog > .container > .section-head > .eyebrow"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 3.3 (foreground color: #00967e, background color: #dff7f1, font size: 9.0pt (12px), font weight: bold). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span class=\"eyebrow\">Blog \u2022 Career Advice That Works</span>",
"target": [
"#blog > .container > .section-head > .eyebrow"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 3.3 (foreground color: #00967e, background color: #dff7f1, font size: 9.0pt (12px), font weight: bold). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#00967e",
"bgColor": "#ffffff",
"contrastRatio": 3.7,
"fontSize": "9.0pt (12px)",
"fontWeight": "bold",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<article class=\"card blog-card\">",
"target": [
".blog-card:nth-child(1)"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 3.7 (foreground color: #00967e, background color: #ffffff, font size: 9.0pt (12px), font weight: bold). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span class=\"meta\">Resume Tips \u2022 6 min</span>",
"target": [
".blog-card:nth-child(1) > .card-pad > .meta"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 3.7 (foreground color: #00967e, background color: #ffffff, font size: 9.0pt (12px), font weight: bold). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#00967e",
"bgColor": "#ffffff",
"contrastRatio": 3.7,
"fontSize": "9.0pt (12px)",
"fontWeight": "bold",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<article class=\"card blog-card\">",
"target": [
".blog-card:nth-child(2)"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 3.7 (foreground color: #00967e, background color: #ffffff, font size: 9.0pt (12px), font weight: bold). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span class=\"meta\">Networking \u2022 4 min</span>",
"target": [
".blog-card:nth-child(2) > .card-pad > .meta"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 3.7 (foreground color: #00967e, background color: #ffffff, font size: 9.0pt (12px), font weight: bold). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#00967e",
"bgColor": "#ffffff",
"contrastRatio": 3.7,
"fontSize": "9.0pt (12px)",
"fontWeight": "bold",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<article class=\"card blog-card\">",
"target": [
".blog-card:nth-child(3)"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 3.7 (foreground color: #00967e, background color: #ffffff, font size: 9.0pt (12px), font weight: bold). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span class=\"meta\">Interview Prep \u2022 8 min</span>",
"target": [
".blog-card:nth-child(3) > .card-pad > .meta"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 3.7 (foreground color: #00967e, background color: #ffffff, font size: 9.0pt (12px), font weight: bold). Expected contrast ratio of 4.5:1"
}
]
}
],
"coverage": {
"contract": "main-document-vertical-scroll",
"complete": true,
"positions": [
{
"y": 0,
"height": 8068
},
{
"y": 576,
"height": 8068
},
{
"y": 1152,
"height": 8068
},
{
"y": 1728,
"height": 8068
},
{
"y": 2304,
"height": 8068
},
{
"y": 2880,
"height": 8068
},
{
"y": 3456,
"height": 8068
},
{
"y": 4032,
"height": 8068
},
{
"y": 4608,
"height": 8068
},
{
"y": 5184,
"height": 8068
},
{
"y": 5760,
"height": 8068
},
{
"y": 6336,
"height": 8068
},
{
"y": 6912,
"height": 8068
},
{
"y": 7348,
"height": 8068
}
],
"scans": 15,
"max_states": 512,
"settle_ms": 5000,
"page_timeout_seconds": 150,
"layout_stability": "consecutive 100ms size samples within one CSS pixel",
"animation_settling": "finite animations present when scroll resources are ready finish or are cancelled",
"interactive_states": "not exercised",
"horizontal_scroll": "not exercised"
}
}
System Prompt
You are a lead web developer at a top digital agency, tasked with creating a one-page website for a new client based on the given specifications, delivered as an HTML file. First non-whitespace char '<', last non-whitespace char '>'. Use the following services to generate placeholder images where needed:
- placehold.co (text): https://placehold.co/[{w}x{h}|{size}][/{bg-color}/{text-color}]?text={text}&font=[lato|lora|montserrat|noto sans|open sans|oswald|playfair display|poppins|pt sans|raleway|roboto|source sans|source sans pro]
- picsum.photos (photos): https://picsum.photos/[{w}/{h}|{size}]?[grayscale][&blur={1-10}]
- pravatar.cc (avatars): https://i.pravatar.cc/{size}?u={identifier}
Choose sizes appropriate to layout.
User Prompt
Create a **complete, polished, production-quality** primary web page for a new client in the "Careers" sector.
Your goal is to generate the full HTML code for a page that is not just functional but also visually compelling, content-rich, and feels like a finished product ready for launch.
**Client & Category:**
- Industry: "Careers"
- Description: Job boards, career advice, resume tips, and professional resources.
**Your Creative Task:**
1. **Invent:** Create a unique, professional-sounding site name and a strong tagline fitting the "Careers" category.
2. **Define Page:** Determine the most effective primary page type (e.g., homepage, service landing page, category portal) to showcase this fictional entity.
3. **Design:** Develop an opinionated, modern, and professional layout. Make distinct choices about structure and flow.
**Content & Structure Requirements (Deliver a COMPLETE page):**
- **Overall:** The final page must feel substantial and complete, with realistic amounts of text (multiple paragraphs per section where appropriate, avoid single sentences), well-integrated placeholder images, and logical flow. It should look like a real website a business would proudly use.
- **HEADER:** Include the invented site name, tagline, a logo placeholder image, and a primary navigation bar. Ensure the navigation has **at least 5-7 clearly defined, relevant links** including: "Interview Prep", "Contact", "Blog".
- **MAIN CONTENT:** Structure this area with **at least 3-4 distinct, well-developed sections**.
- Address key topics relevant to the "Careers" category. Consider themes similar to: "Industry Trends", "Job Market Analysis", "Career Development".
- **Content Depth:** Populate each section with **substantial, realistic text** (multiple sentences/paragraphs). Use authentic industry language and terminology like: "networking", "transferable skills", "job market".
- **Visuals:** Integrate relevant placeholder images logically within the content sections.
- **Calls to Action:** Include clear and contextually relevant CTAs. Use strong verbs similar to: "Find Companies", "Schedule Interview", "Set Preferences".
- **ENGAGEMENT (Recommended):** Strongly consider incorporating **one meaningful interactive element** that would genuinely benefit a user in the "Careers" sector. Ideas similar but not limited to: "career path finder".
- **SIDEBAR (Optional):** If your design includes a sidebar, populate it with **useful, relevant content**. Ideas: "hiring trends", "recent posts", "featured positions".
- **FOOTER:** Include a professional footer with invented contact details, copyright (current year), social media links, and standard links (Privacy, Terms).
- **MODERN WEB PATTERNS:** Include modern web patterns like testimonial cards, feature grids, or FAQ accordions where appropriate.