Fireworks Ember 1 – Careers
via Fireworks · Generated
- AIMAC Debt 3.85
- Cost $0.39
- Total Violations 7
- HTML Size 66 KB
- Em Dashes 32
Screenshot
View Live Page
Accessibility Issues Found
7 Serious
-
color-contrast serious 7 instances
Elements must meet minimum color contrast ratio thresholds
Example HTML
<span>Northwind</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>TalentArc — Chart Your Course. Land Your Future.</title>
<meta name="description" content="TalentArc pairs intelligent job matching with human career coaching. Explore 48,000+ vetted roles, benchmark your salary, and build a resume that beats applicant tracking systems.">
<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:ital,opsz,wght@0,9..144,300..700;1,9..144,300..700&family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
<style>
/* ============ RESET & TOKENS ============ */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
--ink:#0D1B14;
--ink-2:#152b21;
--forest:#123527;
--paper:#F5F2EA;
--cream:#FCFAF4;
--lime:#D7F24B;
--lime-soft:#EDF9B4;
--coral:#FF6A4D;
--muted:#5B6A61;
--muted-light:#9DB0A5;
--line:rgba(13,27,20,.12);
--radius:20px;
--shadow:0 24px 60px -24px rgba(13,27,20,.28);
--font-d:"Fraunces",Georgia,serif;
--font-b:"Inter",-apple-system,sans-serif;
--header-h:76px;
}
html{scroll-behavior:smooth}
body{font-family:var(--font-b);color:var(--ink);background:var(--cream);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none}
section{scroll-margin-top:calc(var(--header-h) + 16px)}
.wrap{width:min(1200px,92%);margin-inline:auto}
::selection{background:var(--lime);color:var(--ink)}
/* ============ TYPE & SHARED ============ */
h1,h2,h3{font-family:var(--font-d);font-weight:500;line-height:1.08;letter-spacing:-.015em}
.eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:.72rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}
.eyebrow::before{content:"";width:34px;height:2px;background:var(--coral)}
.eyebrow.on-dark{color:var(--lime)}
.section-head{max-width:720px;margin-bottom:56px}
.section-head h2{font-size:clamp(2rem,4vw,3.1rem);margin:16px 0 18px}
.section-head p{color:var(--muted);font-size:1.05rem;max-width:60ch}
.hl{position:relative;font-style:italic;white-space:nowrap;z-index:1}
.hl::after{content:"";position:absolute;left:-2%;right:-2%;bottom:.08em;height:.34em;background:var(--lime);z-index:-1;border-radius:3px}
.btn{display:inline-flex;align-items:center;gap:10px;padding:15px 28px;border-radius:100px;font-weight:600;font-size:.95rem;transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s,background .3s,color .3s}
.btn svg{transition:transform .3s}
.btn:hover svg{transform:translateX(4px)}
.btn-ink{background:var(--ink);color:#fff}
.btn-ink:hover{background:var(--forest);transform:translateY(-2px);box-shadow:var(--shadow)}
.btn-lime{background:var(--lime);color:var(--ink)}
.btn-lime:hover{background:#e3fa6e;transform:translateY(-2px);box-shadow:0 16px 40px -14px rgba(150,190,20,.5)}
.btn-ghost{border:1.5px solid var(--line);color:var(--ink)}
.btn-ghost:hover{border-color:var(--ink);transform:translateY(-2px)}
.btn-sm{padding:11px 22px;font-size:.85rem}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.2,.6,.2,1),transform .9s cubic-bezier(.2,.6,.2,1);transition-delay:var(--d,0s)}
.reveal.in{opacity:1;transform:none}
/* ============ HEADER ============ */
.site-header{position:fixed;inset:0 0 auto 0;z-index:100;transition:background .35s,box-shadow .35s,backdrop-filter .35s}
.site-header.scrolled{background:rgba(252,250,244,.88);backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line)}
.header-inner{height:var(--header-h);display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}
.brand img{width:42px;height:42px;border-radius:12px}
.brand-text{line-height:1.15}
.brand-name{font-family:var(--font-d);font-size:1.35rem;font-weight:600;letter-spacing:-.01em}
.brand-tag{display:block;font-size:.6rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.main-nav{margin-left:auto}
.main-nav ul{display:flex;gap:4px;list-style:none;align-items:center}
.main-nav a{padding:9px 13px;font-size:.87rem;font-weight:500;color:var(--ink);border-radius:100px;transition:background .25s,color .25s}
.main-nav a:hover{background:rgba(13,27,20,.06)}
.main-nav a.active{background:var(--ink);color:#fff}
.header-cta{display:flex;align-items:center;gap:14px;flex-shrink:0}
.menu-toggle{display:none;width:44px;height:44px;border-radius:12px;border:1.5px solid var(--line);flex-direction:column;align-items:center;justify-content:center;gap:5px}
.menu-toggle span{width:20px;height:2px;background:var(--ink);border-radius:2px;transition:transform .3s,opacity .3s}
.menu-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle.open span:nth-child(2){opacity:0}
.menu-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
/* ============ HERO ============ */
.hero{padding:calc(var(--header-h) + 72px) 0 90px;position:relative;background:
radial-gradient(900px 500px at 85% -10%,rgba(215,242,75,.28),transparent 60%),
radial-gradient(700px 500px at -10% 30%,rgba(255,106,77,.10),transparent 60%),var(--cream)}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}
.hero h1{font-size:clamp(2.7rem,5.2vw,4.5rem);margin:20px 0 24px}
.hero-sub{color:var(--muted);font-size:1.08rem;max-width:54ch;margin-bottom:34px}
.search-panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:10px;display:grid;grid-template-columns:1.3fr 1fr auto;gap:8px;box-shadow:var(--shadow);max-width:640px}
.search-field{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:12px;background:var(--paper)}
.search-field svg{flex-shrink:0;color:var(--muted)}
.search-field input,.search-field select{border:none;background:transparent;font-family:inherit;font-size:.92rem;color:var(--ink);width:100%;outline:none}
.search-field select{cursor:pointer}
.hero-note{font-size:.82rem;color:var(--muted);margin-top:14px}
.hero-note strong{color:var(--ink)}
.hero-stats{display:flex;gap:44px;margin-top:46px;flex-wrap:wrap}
.stat-num{font-family:var(--font-d);font-size:2.1rem;font-weight:600;line-height:1}
.stat-label{font-size:.78rem;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-top:6px}
.hero-media{position:relative}
.hero-media img{border-radius:28px;box-shadow:var(--shadow);aspect-ratio:4/4.4;object-fit:cover;width:100%}
.float-card{position:absolute;background:#fff;border-radius:16px;box-shadow:var(--shadow);padding:14px 18px;display:flex;gap:12px;align-items:center;font-size:.83rem;font-weight:600;animation:floaty 5.5s ease-in-out infinite}
.float-card small{display:block;font-weight:500;color:var(--muted);font-size:.72rem}
.float-card .icon{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;flex-shrink:0}
.fc-1{top:8%;left:-9%}
.fc-1 .icon{background:var(--lime-soft);color:var(--forest)}
.fc-2{bottom:10%;right:-7%;animation-delay:2.2s}
.fc-2 .icon{background:#E4F0FF;color:#1B5BD7}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
/* ============ TRUST STRIP ============ */
.trust{padding:34px 0;border-block:1px solid var(--line);background:var(--paper)}
.trust-inner{display:flex;align-items:center;gap:36px;flex-wrap:wrap;justify-content:center}
.trust-label{font-size:.72rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.trust-marks{display:flex;gap:38px;flex-wrap:wrap;justify-content:center}
.trust-marks span{font-family:var(--font-d);font-size:1.15rem;font-weight:600;color:rgba(13,27,20,.45);transition:color .3s}
.trust-marks span:hover{color:var(--ink)}
/* ============ PATHS ============ */
.paths{padding:110px 0}
.paths-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.path-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s;display:flex;flex-direction:column}
.path-card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}
.path-media{position:relative;overflow:hidden}
.path-media img{aspect-ratio:16/10;object-fit:cover;width:100%;transition:transform .6s}
.path-card:hover .path-media img{transform:scale(1.06)}
.path-roles{position:absolute;top:14px;left:14px;background:rgba(13,27,20,.82);color:var(--lime);font-size:.72rem;font-weight:700;letter-spacing:.08em;padding:6px 12px;border-radius:100px;backdrop-filter:blur(4px)}
.path-body{padding:24px 26px 28px;display:flex;flex-direction:column;flex:1}
.path-body h3{font-size:1.35rem;margin-bottom:8px}
.path-body p{font-size:.9rem;color:var(--muted);flex:1}
.path-meta{display:flex;justify-content:space-between;align-items:center;margin-top:18px;padding-top:16px;border-top:1px solid var(--line);font-size:.85rem}
.path-salary{font-weight:700}
.path-link{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:var(--forest)}
.path-link svg{transition:transform .3s}
.path-card:hover .path-link svg{transform:translateX(4px)}
.search-note{margin-top:26px;font-size:.92rem;font-weight:600;color:var(--forest);display:none;align-items:center;gap:10px}
.search-note.show{display:flex}
.search-note button{font-size:.8rem;text-decoration:underline;color:var(--muted)}
/* ============ RESUME ============ */
.resume{padding:110px 0;background:var(--paper);border-block:1px solid var(--line)}
.resume-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:70px;align-items:center}
.resume-media{position:relative}
.resume-media img{border-radius:26px;aspect-ratio:4/4.7;object-fit:cover;box-shadow:var(--shadow)}
.ats-badge{position:absolute;bottom:32px;left:-28px;background:var(--ink);color:#fff;border-radius:18px;padding:20px 24px;box-shadow:var(--shadow)}
.ats-badge .score{font-family:var(--font-d);font-size:2.2rem;color:var(--lime);line-height:1}
.ats-badge small{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-light)}
.resume-content h2{font-size:clamp(2rem,3.6vw,2.9rem);margin:16px 0 20px}
.resume-content>p{color:var(--muted);margin-bottom:18px;font-size:1.02rem}
.check-list{list-style:none;margin:26px 0 34px;display:grid;gap:14px}
.check-list li{display:flex;gap:14px;align-items:flex-start;font-size:.95rem}
.check-list .tick{width:24px;height:24px;border-radius:8px;background:var(--lime);display:grid;place-items:center;flex-shrink:0;margin-top:2px}
.check-list strong{font-weight:700}
.resume-ctas{display:flex;gap:14px;flex-wrap:wrap}
/* ============ SALARY TOOL ============ */
.salary{padding:110px 0}
.salary-tool{background:var(--forest);border-radius:30px;padding:clamp(30px,4.5vw,60px);display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,4vw,64px);color:#fff;box-shadow:var(--shadow);position:relative;overflow:hidden}
.salary-tool::before{content:"";position:absolute;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(215,242,75,.14),transparent 65%);top:-200px;right:-150px;pointer-events:none}
.tool-controls{display:grid;gap:20px;align-content:start;position:relative}
.tool-controls h3{font-size:1.5rem;margin-bottom:4px}
.tool-controls>p{font-size:.9rem;color:var(--muted-light)}
.field label{display:block;font-size:.7rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--lime);margin-bottom:8px}
.field select,.field input{width:100%;padding:14px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.18);background:var(--ink-2);color:#fff;font-family:inherit;font-size:.95rem;outline:none;transition:border-color .3s;appearance:none}
.field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23D7F24B' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;cursor:pointer}
.field select:focus,.field input:focus{border-color:var(--lime)}
.tool-result{position:relative;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:clamp(24px,3vw,40px);display:flex;flex-direction:column;justify-content:center}
.result-eyebrow{font-size:.7rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--muted-light)}
.result-median{font-family:var(--font-d);font-size:clamp(2.8rem,4.5vw,4rem);color:var(--lime);line-height:1.05;margin:10px 0 4px;font-weight:600}
.result-sub{font-size:.88rem;color:var(--muted-light);margin-bottom:28px}
.range-labels{display:flex;justify-content:space-between;font-size:.78rem;font-weight:600;margin-bottom:8px}
.range-labels span:first-child{color:var(--muted-light)}
.range-labels span:last-child{color:var(--muted-light)}
.range-track{position:relative;height:12px;background:rgba(255,255,255,.1);border-radius:100px;margin-bottom:34px}
.range-fill{position:absolute;top:0;bottom:0;background:linear-gradient(90deg,rgba(215,242,75,.45),var(--lime));border-radius:100px;transition:left .8s cubic-bezier(.2,.7,.2,1),width .8s cubic-bezier(.2,.7,.2,1)}
.range-median{position:absolute;top:50%;width:22px;height:22px;border-radius:50%;background:var(--cream);border:5px solid var(--lime);transform:translate(-50%,-50%);transition:left .8s cubic-bezier(.2,.7,.2,1);box-shadow:0 4px 14px rgba(0,0,0,.35)}
.delta-msg{font-size:.92rem;line-height:1.55;padding:16px 18px;border-radius:14px;background:rgba(215,242,75,.1);border:1px solid rgba(215,242,75,.28);color:#EAF7C4;display:none}
.delta-msg.show{display:block}
.delta-msg b{color:var(--lime)}
.data-note{font-size:.72rem;color:var(--muted-light);margin-top:20px}
/* ============ TRENDS ============ */
.trends{padding:110px 0;background:var(--ink);color:#fff}
.trends .section-head p{color:var(--muted-light)}
.trends-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.trend-card{border:1px solid rgba(255,255,255,.12);border-radius:var(--radius);padding:30px 28px;background:rgba(255,255,255,.03);transition:background .35s,transform .35s}
.trend-card:hover{background:rgba(255,255,255,.07);transform:translateY(-6px)}
.trend-num{font-family:var(--font-d);font-size:clamp(2.4rem,3.4vw,3.2rem);color:var(--lime);font-weight:600;line-height:1}
.trend-card h3{font-size:1.08rem;margin:16px 0 10px;font-family:var(--font-b);font-weight:700;letter-spacing:0}
.trend-card p{font-size:.86rem;color:var(--muted-light)}
.trends-foot{margin-top:44px;font-size:.85rem;color:var(--muted-light)}
.trends-foot a{color:var(--lime);font-weight:600;text-decoration:underline;text-underline-offset:4px}
/* ============ STORIES ============ */
.stories{padding:110px 0}
.stories-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.story-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:34px 32px;display:flex;flex-direction:column;transition:transform .4s,box-shadow .4s;position:relative}
.story-card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}
.quote-mark{font-family:var(--font-d);font-size:4.4rem;line-height:.6;color:var(--lime);margin-bottom:20px;font-weight:600}
.story-card blockquote{font-size:.97rem;color:var(--ink);flex:1;font-style:italic}
.story-person{display:flex;gap:14px;align-items:center;margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
.story-person img{width:52px;height:52px;border-radius:50%;object-fit:cover}
.story-person strong{display:block;font-size:.92rem}
.story-person small{color:var(--muted);font-size:.78rem}
.story-tag{position:absolute;top:22px;right:22px;background:var(--lime-soft);color:var(--forest);font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:5px 11px;border-radius:100px}
/* ============ NETWORKING + SIDEBAR ============ */
.networking{padding:110px 0;background:var(--paper);border-block:1px solid var(--line)}
.net-grid{display:grid;grid-template-columns:2.5fr 1fr;gap:44px;align-items:start}
.net-main h2{font-size:clamp(2rem,3.6vw,2.9rem);margin:16px 0 20px}
.net-main>p{color:var(--muted);margin-bottom:16px;font-size:1.02rem}
.net-media{margin:34px 0;border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}
.net-media img{width:100%;aspect-ratio:16/8.5;object-fit:cover}
.event-list{display:grid;gap:14px;margin:30px 0 36px}
.event-row{display:flex;gap:20px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 22px;transition:transform .3s,box-shadow .3s}
.event-row:hover{transform:translateX(6px);box-shadow:var(--shadow)}
.event-date{flex-shrink:0;width:64px;text-align:center;background:var(--ink);color:#fff;border-radius:12px;padding:10px 0}
.event-date b{display:block;font-family:var(--font-d);font-size:1.4rem;line-height:1;color:var(--lime)}
.event-date small{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase}
.event-info{flex:1}
.event-info strong{display:block;font-size:.98rem}
.event-info small{color:var(--muted);font-size:.8rem}
.event-rsvp{font-size:.82rem;font-weight:700;color:var(--forest);white-space:nowrap;display:inline-flex;align-items:center;gap:6px}
.sidebar{display:grid;gap:24px;position:sticky;top:calc(var(--header-h) + 24px)}
.side-panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px}
.side-panel h3{font-size:1.05rem;margin-bottom:16px;font-family:var(--font-b);font-weight:700;display:flex;align-items:center;gap:10px}
.side-panel h3::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--coral)}
.chip-cloud{display:flex;flex-wrap:wrap;gap:8px}
.chip{font-size:.78rem;font-weight:600;padding:8px 14px;border-radius:100px;border:1px solid var(--line);background:var(--paper);transition:background .25s,color .25s,border-color .25s;cursor:pointer}
.chip:hover{background:var(--ink);color:var(--lime);border-color:var(--ink)}
.course-list{list-style:none;display:grid;gap:14px}
.course-list li{display:flex;gap:12px;align-items:center}
.course-list img{width:52px;height:52px;border-radius:12px;flex-shrink:0}
.course-list strong{display:block;font-size:.85rem;line-height:1.3}
.course-list small{color:var(--muted);font-size:.72rem}
.mini-quote{background:var(--forest);color:#fff;border:none}
.mini-quote h3{color:#fff}
.mini-quote h3::before{background:var(--lime)}
.mini-quote p{font-size:.86rem;color:var(--muted-light);font-style:italic}
.mini-quote .mq-person{display:flex;gap:10px;align-items:center;margin-top:16px;font-size:.78rem;font-weight:600}
.mini-quote .mq-person img{width:34px;height:34px;border-radius:50%}
/* ============ FAQ ============ */
.faq{padding:110px 0}
.faq-wrap{max-width:820px;margin-inline:auto}
.faq-item{border-bottom:1px solid var(--line)}
.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:26px 4px;text-align:left;font-family:var(--font-d);font-size:1.2rem;font-weight:500;color:var(--ink);transition:color .25s}
.faq-q:hover{color:var(--forest)}
.faq-icon{flex-shrink:0;width:34px;height:34px;border-radius:50%;border:1.5px solid var(--line);display:grid;place-items:center;transition:transform .4s,background .3s,border-color .3s}
.faq-item.open .faq-icon{transform:rotate(45deg);background:var(--lime);border-color:var(--lime)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .5s cubic-bezier(.2,.7,.2,1)}
.faq-a p{padding:0 4px 28px;color:var(--muted);font-size:.95rem;max-width:66ch}
/* ============ CTA BAND ============ */
.cta-band{background:var(--lime);padding:96px 0}
.cta-inner{display:grid;grid-template-columns:1.2fr .8fr;gap:56px;align-items:center}
.cta-inner h2{font-size:clamp(2.1rem,4vw,3.4rem)}
.cta-inner p{margin-top:14px;font-size:1.02rem;color:rgba(13,27,20,.75);max-width:48ch}
.news-form{display:flex;gap:10px;background:#fff;padding:8px;border-radius:100px;box-shadow:var(--shadow)}
.news-form input{flex:1;border:none;outline:none;padding:12px 20px;font-family:inherit;font-size:.95rem;background:transparent;min-width:0}
.news-success{font-weight:700;font-size:1rem;background:rgba(13,27,20,.08);padding:18px 24px;border-radius:16px;display:none}
/* ============ FOOTER ============ */
.site-footer{background:var(--ink);color:#fff;padding:80px 0 0}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:48px;padding-bottom:60px}
.footer-brand img{width:44px;height:44px;border-radius:12px;margin-bottom:18px}
.footer-brand .brand-name{color:#fff;font-size:1.4rem}
.footer-brand p{font-size:.88rem;color:var(--muted-light);margin:14px 0 22px;max-width:34ch}
.contact-lines{display:grid;gap:8px;font-size:.85rem;color:var(--muted-light)}
.contact-lines a{color:#fff;font-weight:500}
.contact-lines a:hover{color:var(--lime)}
.socials{display:flex;gap:10px;margin-top:24px}
.socials a{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.18);display:grid;place-items:center;transition:background .3s,border-color .3s,transform .3s}
.socials a:hover{background:var(--lime);border-color:var(--lime);transform:translateY(-3px)}
.socials a:hover svg{stroke:var(--ink);fill:var(--ink)}
.footer-col h4{font-size:.72rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--lime);margin-bottom:20px}
.footer-col ul{list-style:none;display:grid;gap:12px}
.footer-col a{font-size:.88rem;color:var(--muted-light);transition:color .25s}
.footer-col a:hover{color:#fff}
.footer-bar{border-top:1px solid rgba(255,255,255,.1);padding:26px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;font-size:.8rem;color:var(--muted-light)}
.footer-bar nav{display:flex;gap:24px}
.footer-bar a:hover{color:#fff}
/* ============ RESPONSIVE ============ */
@media(max-width:1024px){
.hero-grid{grid-template-columns:1fr;gap:56px}
.hero-media{max-width:560px}
.fc-1{left:0}.fc-2{right:0}
.paths-grid{grid-template-columns:repeat(2,1fr)}
.resume-grid{grid-template-columns:1fr;gap:56px}
.resume-media{max-width:480px}
.ats-badge{left:20px}
.salary-tool{grid-template-columns:1fr}
.trends-grid{grid-template-columns:repeat(2,1fr)}
.stories-grid{grid-template-columns:1fr;max-width:640px;margin-inline:auto}
.net-grid{grid-template-columns:1fr}
.sidebar{position:static;grid-template-columns:repeat(2,1fr)}
.cta-inner{grid-template-columns:1fr;gap:36px}
.footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:860px){
.main-nav{position:absolute;top:var(--header-h);left:0;right:0;background:var(--cream);border-bottom:1px solid var(--line);padding:16px 4%;display:none;box-shadow:var(--shadow)}
.main-nav.open{display:block}
.main-nav ul{flex-direction:column;align-items:stretch;gap:2px}
.main-nav a{display:block;padding:13px 16px;font-size:1rem}
.menu-toggle{display:flex}
.header-cta .btn{display:none}
}
@media(max-width:640px){
.search-panel{grid-template-columns:1fr}
.search-panel .btn{justify-content:center}
.hero-stats{gap:28px}
.paths-grid,.trends-grid,.sidebar{grid-template-columns:1fr}
.float-card{padding:10px 14px;font-size:.75rem}
.news-form{flex-direction:column;border-radius:22px}
.news-form .btn{justify-content:center}
.footer-grid{grid-template-columns:1fr}
.footer-bar{flex-direction:column;align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){
*,*::before,*::after{transition:none!important;animation:none!important}
.reveal{opacity:1;transform:none}
}
</style>
</head>
<body>
<!-- ================= HEADER ================= -->
<header class="site-header" id="siteHeader">
<div class="wrap header-inner">
<a href="#" class="brand" aria-label="TalentArc home">
<img src="https://placehold.co/96x96/123527/D7F24B?text=TA&font=montserrat" alt="TalentArc logo" width="42" height="42">
<span class="brand-text">
<span class="brand-name">TalentArc</span>
<span class="brand-tag">Chart your course</span>
</span>
</a>
<nav class="main-nav" id="mainNav" aria-label="Primary navigation">
<ul>
<li><a href="#jobs">Find Jobs</a></li>
<li><a href="#resume">Resume Guide</a></li>
<li><a href="#salary">Salary Info</a></li>
<li><a href="#networking">Networking</a></li>
<li><a href="#stories">Success Stories</a></li>
<li><a href="#resources">Resources</a></li>
<li><a href="#contact">Contact</a></li>
</ul>
</nav>
<div class="header-cta">
<a href="#jobs" class="btn btn-lime btn-sm">Create Profile</a>
<button class="menu-toggle" id="menuToggle" aria-label="Toggle menu" aria-expanded="false">
<span></span><span></span><span></span>
</button>
</div>
</div>
</header>
<main>
<!-- ================= HERO ================= -->
<section class="hero">
<div class="wrap hero-grid">
<div>
<span class="eyebrow reveal">The career platform for ambitious people</span>
<h1 class="reveal" style="--d:.08s">Find work that <span class="hl">finds you back.</span></h1>
<p class="hero-sub reveal" style="--d:.16s">TalentArc pairs intelligent job matching with human career coaching — so you spend less time scrolling job boards and more time interviewing for roles that actually fit. Build a profile, benchmark your salary, and let vetted opportunities come to you.</p>
<form class="search-panel reveal" style="--d:.24s" id="jobSearchForm" role="search">
<div class="search-field">
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><circle cx="11" cy="11" r="7"/><path d="M21 21l-4.3-4.3"/></svg>
<input type="text" id="jobQuery" placeholder="Job title, skill, or keyword" aria-label="Job title, skill, or keyword">
</div>
<div class="search-field">
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><path d="M12 21s-7-5.6-7-11a7 7 0 1114 0c0 5.4-7 11-7 11z"/><circle cx="12" cy="10" r="2.5"/></svg>
<select id="jobLocation" aria-label="Location">
<option>Anywhere / Remote</option>
<option>New York, NY</option>
<option>San Francisco, CA</option>
<option>Austin, TX</option>
<option>Chicago, IL</option>
<option>Seattle, WA</option>
</select>
</div>
<button type="submit" class="btn btn-ink">Search Jobs</button>
</form>
<p class="hero-note reveal" style="--d:.3s"><strong>128,400 roles</strong> were matched to members last month — average time-to-offer: <strong>23 days</strong>.</p>
<div class="hero-stats reveal" style="--d:.38s">
<div><div class="stat-num" data-target="48000" data-suffix="+">0</div><div class="stat-label">Open roles</div></div>
<div><div class="stat-num" data-target="12400" data-suffix="+">0</div><div class="stat-label">Hiring companies</div></div>
<div><div class="stat-num" data-target="3.2" data-decimals="1" data-suffix="M">0</div><div class="stat-label">Members</div></div>
<div><div class="stat-num" data-target="92" data-suffix="%">0</div><div class="stat-label">Match satisfaction</div></div>
</div>
</div>
<div class="hero-media reveal" style="--d:.2s">
<img src="https://picsum.photos/seed/talentarc-hero/1200/1320" alt="Professionals collaborating in a bright modern office">
<div class="float-card fc-1">
<span class="icon"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><path d="M20 6L9 17l-5-5"/></svg></span>
<span>Offer accepted<small>Senior Product Designer · $142k</small></span>
</div>
<div class="float-card fc-2">
<span class="icon"><svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"><path d="M12 2l2.4 4.9 5.4.8-3.9 3.8.9 5.4-4.8-2.5-4.8 2.5.9-5.4L4.2 7.7l5.4-.8L12 2z"/></svg></span>
<span>ATS Score: 94/100<small>Resume optimized for 6 roles</small></span>
</div>
</div>
</div>
</section>
<!-- ================= TRUST STRIP ================= -->
<div class="trust">
<div class="wrap trust-inner">
<span class="trust-label">Trusted by hiring teams at</span>
<div class="trust-marks">
<span>Northwind</span><span>Helios Labs</span><span>Vantage Group</span><span>Bluepine</span><span>Orbita</span><span>Kestrel & Co.</span>
</div>
</div>
</div>
<!-- ================= CAREER PATHS ================= -->
<section class="paths" id="jobs">
<div class="wrap">
<div class="section-head reveal">
<span class="eyebrow">Explore career paths</span>
<h2>Six fields. Thousands of doors open right now.</h2>
<p>Every listing on TalentArc is verified for real compensation bands, active hiring intent, and transparent requirements — no ghost postings, no bait-and-switch descriptions. Filter by path below, or search above to narrow the field.</p>
</div>
<div class="paths-grid" id="pathsGrid">
<article class="path-card reveal" data-tags="technology engineering software developer devops it cloud frontend backend fullstack" style="--d:0s">
<div class="path-media"><img src="https://picsum.photos/seed/career-tech/640/420" alt="Software engineers reviewing code on dual monitors"><span class="path-roles">14,200 roles</span></div>
<div class="path-body">
<h3>Technology & Engineering</h3>
<p>From frontend specialists to platform architects — skills-based hiring is dominant here, and portfolios now outweigh pedigree at 68% of our partner companies.</p>
<div class="path-meta"><span class="path-salary">$95k – $185k</span><a href="#salary" class="path-link">Explore <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><path d="M5 12h14M13 6l6 6-6 6"/></svg></a></div>
</div>
</article>
<article class="path-card reveal" data-tags="healthcare nursing nurse medical life sciences clinical practitioner" style="--d:.08s">
<div class="path-media"><img src="https://picsum.photos/seed/career-health/640/420" alt="Healthcare professional in a modern clinic corridor"><span class="path-roles">9,800 roles</span></div>
<div class="path-body">
<h3>Healthcare & Life Sciences</h3>
<p>Clinical and non-clinical demand continues to outpace supply. Sign-on bonuses and flexible scheduling are now standard levers for top candidates.</p>
<div class="path-meta"><span class="path-salary">$68k – $142k</span><a href="#salary" class="path-link">Explore <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><path d="M5 12h14M13 6l6 6-6 6"/></svg></a></div>
</div>
</article>
<article class="path-card reveal" data-tags="finance accounting analyst audit banking fintech controller cpa" style="--d:.16s">
<div class="path-media"><img src="https://picsum.photos/seed/career-finance/640/420" alt="Financial analyst working with charts and reports"><span class="path-roles">7,300 roles</span></div>
<div class="path-body">
<h3>Finance & Accounting</h3>
<p>FP&A, audit, and fintech operations roles are growing steadily, with CPA-track positions offering some of the clearest advancement ladders on the platform.</p>
<div class="path-meta"><span class="path-salary">$72k – $150k</span><a href="#salary" class="path-link">Explore <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><path d="M5 12h14M13 6l6 6-6 6"/></svg></a></div>
</div>
</article>
<article class="path-card reveal" data-tags="marketing creative brand content design copywriter social media growth" style="--d:0s">
<div class="path-media"><img src="https://picsum.photos/seed/career-marketing/640/420" alt="Creative team reviewing a brand campaign on a wall"><span class="path-roles">6,100 roles</span></div>
<div class="path-body">
<h3>Marketing & Creative</h3>
<p>Growth marketing, brand strategy, and content design lead this category. Hybrid arrangements appear in 7 of 10 postings — the highest of any field.</p>
<div class="path-meta"><span class="path-salary">$60k – $128k</span><a href="#salary" class="path-link">Explore <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><path d="M5 12h14M13 6l6 6-6 6"/></svg></a></div>
</div>
</article>
<article class="path-card reveal" data-tags="data analytics scientist machine learning ai sql python statistics" style="--d:.08s">
<div class="path-media"><img src="https://picsum.photos/seed/career-data/640/420" alt="Data analyst examining dashboards and visualizations"><span class="path-roles">8,900 roles</span></div>
<div class="path-body">
<h3>Data & Analytics</h3>
<p>SQL, Python, and stakeholder communication form the core triad. AI-adjacent skill mentions in these postings are up 180% year over year.</p>
<div class="path-meta"><span class="path-salary">$80k – $165k</span><a href="#salary" class="path-link">Explore <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><path d="M5 12h14M13 6l6 6-6 6"/></svg></a></div>
</div>
</article>
<article class="path-card reveal" data-tags="operations project management program scrum agile logistics supply chain" style="--d:.16s">
<div class="path-media"><img src="https://picsum.photos/seed/career-ops/640/420" alt="Project manager leading a stand-up meeting with a roadmap board"><span class="path-roles">5,400 roles</span></div>
<div class="path-body">
<h3>Operations & Project Management</h3>
<p>PMP and Agile certifications remain strong salary multipliers. Cross-functional program roles are the fastest-growing segment in this path.</p>
<div class="path-meta"><span class="path-salary">$70k – $138k</span><a href="#salary" class="path-link">Explore <svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><path d="M5 12h14M13 6l6 6-6 6"/></svg></a></div>
</div>
</article>
</div>
<p class="search-note" id="searchNote"><span id="searchNoteText"></span><button type="button" id="searchReset">Clear search</button></p>
</div>
</section>
<!-- ================= RESUME GUIDE ================= -->
<section class="resume" id="resume">
<div class="wrap resume-grid">
<div class="resume-media reveal">
<img src="https://picsum.photos/seed/resume-workspace/880/1030" alt="A tidy workspace with a laptop showing a resume draft">
<div class="ats-badge"><div class="score">94<span style="font-size:1.1rem;color:var(--muted-light)">/100</span></div><small>ATS readiness score</small></div>
</div>
<div class="resume-content">
<span class="eyebrow reveal">Resume & cover letter guide</span>
<h2 class="reveal" style="--d:.08s">Beat the bots first. Then win the human.</h2>
<p class="reveal" style="--d:.14s">Roughly 75% of resumes are filtered by an applicant tracking system before a recruiter ever reads a line. TalentArc's resume engine parses your document the same way the major ATS platforms do — checking keyword alignment against the job description, flagging formatting that breaks parsing, and scoring how well your achievements are quantified.</p>
<p class="reveal" style="--d:.2s">Then we help you write for the person on the other side. A strong cover letter in 2025 is short, specific, and mirrors the language of the posting without parroting it. Our guided builder walks you through a three-paragraph structure that hiring managers consistently rate as the most readable: the hook, the evidence, and the close.</p>
<ul class="check-list">
<li class="reveal" style="--d:.22s"><span class="tick"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="#0D1B14" stroke-width="3.2" stroke-linecap="round"><path d="M20 6L9 17l-5-5"/></svg></span><span><strong>Keyword mapping</strong> — align your skills section to each posting's exact terminology and required competencies.</span></li>
<li class="reveal" style="--d:.28s"><span class="tick"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="#0D1B14" stroke-width="3.2" stroke-linecap="round"><path d="M20 6L9 17l-5-5"/></svg></span><span><strong>Quantified impact</strong> — convert duties into outcomes: revenue moved, costs cut, time saved, teams led.</span></li>
<li class="reveal" style="--d:.34s"><span class="tick"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="#0D1B14" stroke-width="3.2" stroke-linecap="round"><path d="M20 6L9 17l-5-5"/></svg></span><span><strong>Parse-safe formatting</strong> — single column, standard headings, no graphics in critical zones, export-checked PDF.</span></li>
<li class="reveal" style="--d:.4s"><span class="tick"><svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="#0D1B14" stroke-width="3.2" stroke-linecap="round"><path d="M20 6L9 17l-5-5"/></svg></span><span><strong>Skill assessment badge</strong> — verify core competencies with a 20-minute assessment recruiters can filter for.</span></li>
</ul>
<div class="resume-ctas reveal" style="--d:.44s">
<a href="#salary" class="btn btn-ink">Upload Resume <svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><path d="M12 19V5M6 11l6-6 6 6"/></svg></a>
<a href="#faq" class="btn btn-ghost">Read the Full Guide</a>
</div>
</div>
</div>
</section>
<!-- ================= SALARY INTELLIGENCE ================= -->
<section class="salary" id="salary">
<div class="wrap">
<div class="section-head reveal">
<span class="eyebrow">Salary intelligence</span>
<h2>Know your number before they name theirs.</h2>
<p>Negotiation starts with data. Our compensation model blends verified job postings, accepted offers, and anonymized self-reported pay — refreshed quarterly — so the range you see reflects the market as it is, not as it was eighteen months ago.</p>
</div>
<div class="salary-tool reveal">
<div class="tool-controls">
<div>
<h3>Salary Comparison Tool</h3>
<p>Select your role, experience level, and market. Add your current pay to see exactly where you stand.</p>
</div>
<div class="field"><label for="roleSel">Role</label><select id="roleSel"></select></div>
<div class="field"><label for="expSel">Experience level</label><select id="expSel"></select></div>
<div class="field"><label for="locSel">Location / market</label><select id="locSel"></select></div>
<div class="field"><label for="curInput">Your current salary (optional)</label><input type="text" id="curInput" inputmode="numeric" placeholder="e.g. 85000" autocomplete="off"></div>
</div>
<div class="tool-result" aria-live="polite">
<span class="result-eyebrow" id="resultLabel">Estimated market median</span>
<div class="result-median" id="medianOut">$0</div>
<p class="result-sub" id="resultSub">Base salary · United States · full-time</p>
<div class="range-labels"><span id="lowOut">$0</span><span>Typical range</span><span id="highOut">$0</span></div>
<div class="range-track">
<div class="range-fill" id="rangeFill" style="left:0%;width:0%"></div>
<div class="range-median" id="rangeMedian" style="left:0%"></div>
</div>
<div class="delta-msg" id="deltaMsg"></div>
<p class="data-note">Model based on 2.1M verified compensation data points, updated Q3 2025. Ranges reflect base salary and exclude equity, bonuses, and benefits. Total compensation at public companies typically runs 12–28% higher.</p>
</div>
</div>
</div>
</section>
<!-- ================= INDUSTRY TRENDS ================= -->
<section class="trends" id="trends">
<div class="wrap">
<div class="section-head reveal">
<span class="eyebrow on-dark">Industry trends · 2025</span>
<h2 style="color:#fff">The hiring landscape, in four numbers.</h2>
<p>Our research desk analyzes millions of postings and placement outcomes each quarter. These are the shifts shaping how — and whom — companies hire right now.</p>
</div>
<div class="trends-grid">
<div class="trend-card reveal" style="--d:0s">
<div class="trend-num" data-target="42" data-suffix="%">0</div>
<h3>Pay transparency goes mainstream</h3>
<p>Of all new postings now include a salary range — up from 18% in 2022 — driven by state legislation and candidate expectations alike.</p>
</div>
<div class="trend-card reveal" style="--d:.08s">
<div class="trend-num" data-target="68" data-suffix="%">0</div>
<h3>Skills over degrees</h3>
<p>Of employers on TalentArc have dropped degree requirements for at least some roles, replacing them with structured skill assessments.</p>
</div>
<div class="trend-card reveal" style="--d:.16s">
<div class="trend-num" data-target="3" data-suffix="×">0</div>
<h3>Hybrid is the default</h3>
<p>Hybrid role volume has tripled since 2020, while fully remote postings have stabilized at roughly 14% of all white-collar openings.</p>
</div>
<div class="trend-card reveal" style="--d:.24s">
<div class="trend-num" data-target="180" data-suffix="%" data-prefix="+">0</div>
<h3>AI fluency pays</h3>
<p>Year-over-year growth in AI-related skill mentions across non-technical postings — and a measurable premium for candidates who demonstrate it.</p>
</div>
</div>
<p class="trends-foot reveal">Want the full picture? <a href="#cta">Get the Quarterly Hiring Report</a> — free with a TalentArc profile.</p>
</div>
</section>
<!-- ================= SUCCESS STORIES ================= -->
<section class="stories" id="stories">
<div class="wrap">
<div class="section-head reveal">
<span class="eyebrow">Success stories</span>
<h2>Real people. Real offers. Real leverage.</h2>
<p>Every week, thousands of members move into roles that fit their skills, their salary targets, and their lives. Here's what the journey looked like for three of them.</p>
</div>
<div class="stories-grid">
<article class="story-card reveal" style="--d:0s">
<span class="story-tag">Career switch</span>
<div class="quote-mark">“</div>
<blockquote>After nine years in retail management, I assumed tech was closed to me. The skill assessment showed my operations experience mapped directly onto project coordination roles. Three interviews later, I signed an offer with a 34% raise — and a cover letter I actually felt proud of.</blockquote>
<div class="story-person">
<img src="https://i.pravatar.cc/120?u=maria.okafor" alt="Portrait of Maria Okafor">
<div><strong>Maria Okafor</strong><small>Project Coordinator, Orbita · hired in 31 days</small></div>
</div>
</article>
<article class="story-card reveal" style="--d:.1s">
<span class="story-tag">Salary win</span>
<div class="quote-mark">“</div>
<blockquote>The salary tool told me I was underpaid by about $19k for my market and level. I brought that data into my review cycle instead of a vague ask, and my manager matched the median within two weeks. Data beats nerves, every single time.</blockquote>
<div class="story-person">
<img src="https://i.pravatar.cc/120?u=daniel.reyes" alt="Portrait of Daniel Reyes">
<div><strong>Daniel Reyes</strong><small>Data Analyst, Bluepine · +$19,400 adjustment</small></div>
</div>
</article>
<article class="story-card reveal" style="--d:.2s">
<span class="story-tag">Mentorship</span>
<div class="quote-mark">“</div>
<blockquote>My mentor had made the exact jump I was attempting — ICU nursing into clinical informatics. She reviewed my resume line by line, ran two mock interviews with me, and introduced me to the hiring manager at a networking event. I start next month.</blockquote>
<div class="story-person">
<img src="https://i.pravatar.cc/120?u=priya.natarajan" alt="Portrait of Priya Natarajan">
<div><strong>Priya Natarajan</strong><small>Clinical Informatics Specialist · hired in 47 days</small></div>
</div>
</article>
</div>
</div>
</section>
<!-- ================= NETWORKING + SIDEBAR ================= -->
<section class="networking" id="networking">
<div class="wrap net-grid">
<div class="net-main">
<span class="eyebrow reveal">Networking & mentorship</span>
<h2 class="reveal" style="--d:.06s">Your network is still the shortest path to an offer.</h2>
<p class="reveal" style="--d:.12s">Referrals account for roughly 30% of all hires on TalentArc, despite representing under 7% of applications. That's why we built networking directly into the platform: structured mentorship matching, small-group industry mixers, and informational-interview templates that take the awkwardness out of the first message.</p>
<p class="reveal" style="--d:.16s">Whether you're exploring a new field or accelerating in your current one, a single conversation with someone two steps ahead of you can compress months of trial and error into an afternoon.</p>
<div class="net-media reveal" style="--d:.2s"><img src="https://picsum.photos/seed/networking-event/1000/540" alt="Professionals talking at a TalentArc networking event"></div>
<span class="eyebrow reveal" style="--d:.22s">Upcoming events</span>
<div class="event-list">
<div class="event-row reveal" style="--d:.24s">
<div class="event-date"><b>09</b><small>Dec</small></div>
<div class="event-info"><strong>Breaking Into Data: A Career-Switcher's Panel</strong><small>Virtual · 6:00 PM CT · 3 speakers · live Q&A</small></div>
<a href="#cta" class="event-rsvp">RSVP <svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><path d="M5 12h14M13 6l6 6-6 6"/></svg></a>
</div>
<div class="event-row reveal" style="--d:.3s">
<div class="event-date"><b>16</b><small>Dec</small></div>
<div class="event-info"><strong>Finance & Fintech Mixer — Winter Cohort</strong><small>New York, NY · 6:30 PM ET · capped at 60 attendees</small></div>
<a href="#cta" class="event-rsvp">RSVP <svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><path d="M5 12h14M13 6l6 6-6 6"/></svg></a>
</div>
<div class="event-row reveal" style="--d:.36s">
<div class="event-date"><b>08</b><small>Jan</small></div>
<div class="event-info"><strong>Negotiation Workshop: Scripts That Work</strong><small>Virtual · 12:00 PM PT · led by former Big Tech recruiter</small></div>
<a href="#cta" class="event-rsvp">RSVP <svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><path d="M5 12h14M13 6l6 6-6 6"/></svg></a>
</div>
</div>
<div class="resume-ctas reveal" style="--d:.4s">
<a href="#cta" class="btn btn-ink">Connect Now <svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><path d="M5 12h14M13 6l6 6-6 6"/></svg></a>
<a href="#stories" class="btn btn-ghost">Meet the Mentors</a>
</div>
</div>
<aside class="sidebar" id="resources" aria-label="Career resources sidebar">
<div class="side-panel reveal">
<h3>Popular searches</h3>
<div class="chip-cloud">
<button class="chip" data-q="remote">remote product manager</button>
<button class="chip" data-q="data">entry level data analyst</button>
<button class="chip" data-q="design">UX writer</button>
<button class="chip" data-q="nursing">nurse practitioner</button>
<button class="chip" data-q="devops">devops engineer</button>
<button class="chip" data-q="marketing">marketing director</button>
<button class="chip" data-q="finance">financial planner</button>
<button class="chip" data-q="project">scrum master</button>
</div>
</div>
<div class="side-panel reveal" style="--d:.08s">
<h3>Trending skill courses</h3>
<ul class="course-list">
<li><img src="https://placehold.co/72x72/123527/D7F24B?text=01&font=montserrat" alt="Course thumbnail: Ace the Behavioral Interview"><div><strong>Ace the Behavioral Interview</strong><small>4.9 rating · 12,400 learners · 3.5 hrs</small></div></li>
<li><img src="https://placehold.co/72x72/0D1B14/D7F24B?text=02&font=montserrat" alt="Course thumbnail: SQL for Analysts"><div><strong>SQL for Analysts: Zero to Job-Ready</strong><small>4.8 rating · 9,100 learners · 8 hrs</small></div></li>
<li><img src="https://placehold.co/72x72/FF6A4D/0D1B14?text=03&font=montserrat" alt="Course thumbnail: Negotiate Your Offer"><div><strong>Negotiate Your Offer with Confidence</strong><small>4.9 rating · 7,800 learners · 2 hrs</small></div></li>
<li><img src="https://placehold.co/72x72/123527/FCFAF4?text=04&font=montserrat" alt="Course thumbnail: LinkedIn Profile Makeover"><div><strong>The LinkedIn Profile Makeover</strong><small>4.7 rating · 15,200 learners · 1.5 hrs</small></div></li>
</ul>
</div>
<div class="side-panel mini-quote reveal" style="--d:.16s">
<h3>Member spotlight</h3>
<p>"I sent one informational-interview request through TalentArc. That conversation became a referral, and the referral became my job."</p>
<div class="mq-person"><img src="https://i.pravatar.cc/80?u=jordan.park" alt="Portrait of Jordan Park"><span>Jordan Park · UX Designer, Helios Labs</span></div>
</div>
</aside>
</div>
</section>
<!-- ================= FAQ ================= -->
<section class="faq" id="faq">
<div class="wrap">
<div class="section-head reveal" style="margin-inline:auto;text-align:center">
<span class="eyebrow" style="justify-content:center">Common questions</span>
<h2>Everything you're wondering, answered.</h2>
</div>
<div class="faq-wrap">
<div class="faq-item reveal">
<button class="faq-q" aria-expanded="false">Is TalentArc free for job seekers?<span class="faq-icon"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><path d="M12 5v14M5 12h14"/></svg></span></button>
<div class="faq-a"><p>Yes. Creating a profile, browsing and applying to roles, using the salary comparison tool, and attending virtual events are all free, forever. We also offer a Premium tier ($19/month) that adds unlimited resume rewrites with a human coach, priority application review, and advanced interview prep — but the core platform will always be open to everyone.</p></div>
</div>
<div class="faq-item reveal" style="--d:.05s">
<button class="faq-q" aria-expanded="false">How does the skill assessment work?<span class="faq-icon"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><path d="M12 5v14M5 12h14"/></svg></span></button>
<div class="faq-a"><p>Each assessment is a 20-minute, role-specific evaluation built with input from hiring managers in that field. Pass, and a verified badge appears on your profile — recruiters can filter for it, and badge-holders receive roughly 2.4× more inbound messages. Assessments are proctored asynchronously and can be retaken every 90 days.</p></div>
</div>
<div class="faq-item reveal" style="--d:.1s">
<button class="faq-q" aria-expanded="false">Where does your salary data come from?<span class="faq-icon"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><path d="M12 5v14M5 12h14"/></svg></span></button>
<div class="faq-a"><p>Our model blends three sources: compensation ranges from verified job postings, anonymized accepted-offer data from placements made through the platform, and opt-in self-reported salaries from members. The dataset currently covers 2.1 million data points across 1,400 role titles and is refreshed quarterly, with outliers trimmed and metro-level cost adjustments applied.</p></div>
</div>
<div class="faq-item reveal" style="--d:.15s">
<button class="faq-q" aria-expanded="false">Can my current employer see that I'm looking?<span class="faq-icon"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><path d="M12 5v14M5 12h14"/></svg></span></button>
<div class="faq-a"><p>No — unless you want them to. "Open to Work" status is hidden by default from any company whose email domain matches your listed current employer, and you can block additional companies individually. Your profile visibility is fully granular: public, recruiters-only, or completely private until you apply.</p></div>
</div>
<div class="faq-item reveal" style="--d:.2s">
<button class="faq-q" aria-expanded="false">What makes a cover letter effective in 2025?<span class="faq-icon"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round"><path d="M12 5v14M5 12h14"/></svg></span></button>
<div class="faq-a"><p>Brevity and evidence. Hiring managers spend an average of 26 seconds on a cover letter, so the letters that perform best are under 200 words, open with a specific reason you want this role at this company, and back it with one quantified achievement. Our guided builder enforces that structure — and our data shows it lifts response rates by 41% compared to generic templates.</p></div>
</div>
</div>
</div>
</section>
<!-- ================= CTA BAND ================= -->
<section class="cta-band" id="cta">
<div class="wrap cta-inner">
<div class="reveal">
<h2>Get <em>The Arc</em> — the career briefing 210,000 people read weekly.</h2>
<p>One email, every Tuesday: market shifts, salary benchmarks, and three hand-picked roles matched to your field. No noise, unsubscribe anytime.</p>
</div>
<div class="reveal" style="--d:.12s">
<form class="news-form" id="newsForm">
<input type="email" id="newsEmail" placeholder="you@example.com" aria-label="Email address" required>
<button type="submit" class="btn btn-ink">Subscribe</button>
</form>
<p class="news-success" id="newsSuccess">You're in. Check your inbox for a confirmation — your first issue of The Arc arrives Tuesday.</p>
</div>
</div>
</section>
</main>
<!-- ================= FOOTER ================= -->
<footer class="site-footer" id="contact">
<div class="wrap">
<div class="footer-grid">
<div class="footer-brand">
<img src="https://placehold.co/96x96/D7F24B/123527?text=TA&font=montserrat" alt="TalentArc logo">
<span class="brand-name">TalentArc</span>
<p>Chart your course. Land your future. The career platform pairing intelligent matching with human coaching since 2019.</p>
<div class="contact-lines">
<span>418 Meridian Avenue, Suite 1200<br>Austin, TX 78701</span>
<span>Phone: <a href="tel:+15125550194">(512) 555-0194</a></span>
<span>Email: <a href="mailto:hello@talentarc.com">hello@talentarc.com</a></span>
<span>Support hours: Mon–Fri, 8am–7pm CT</span>
</div>
<div class="socials">
<a href="#" aria-label="LinkedIn"><svg width="16" height="16" viewBox="0 0 24 24" fill="#fff"><path d="M4.98 3.5C4.98 4.88 3.87 6 2.5 6S0 4.88 0 3.5 1.12 1 2.5 1s2.48 1.12 2.48 2.5zM.5 8h4v15h-4V8zm7.5 0h3.8v2.05h.05c.53-1 1.83-2.05 3.77-2.05 4.03 0 4.78 2.65 4.78 6.1V23h-4v-7.9c0-1.88-.03-4.3-2.62-4.3-2.62 0-3.02 2.05-3.02 4.17V23H8V8z"/></svg></a>
<a href="#" aria-label="X (Twitter)"><svg width="15" height="15" viewBox="0 0 24 24" fill="#fff"><path d="M18.9 1.15h3.68l-8.04 9.19L24 22.85h-7.4l-5.8-7.58-6.64 7.58H.47l8.6-9.83L0 1.15h7.59l5.24 6.93 6.07-6.93zm-1.29 19.5h2.04L6.49 3.24H4.3l13.31 17.4z"/></svg></a>
<a href="#" aria-label="Instagram"><svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#fff" stroke-width="2"><rect x="2" y="2" width="20" height="20" rx="5"/><circle cx="12" cy="12" r="4.5"/><circle cx="17.5" cy="6.5" r="1.3" fill="#fff" stroke="none"/></svg></a>
<a href="#" aria-label="YouTube"><svg width="17" height="17" viewBox="0 0 24 24" fill="#fff"><path d="M23.5 6.2a3 3 0 00-2.1-2.1C19.5 3.5 12 3.5 12 3.5s-7.5 0-9.4.6A3 3 0 00.5 6.2 31.3 31.3 0 000 12a31.3 31.3 0 00.5 5.8 3 3 0 002.1 2.1c1.9.6 9.4.6 9.4.6s7.5 0 9.4-.6a3 3 0 002.1-2.1A31.3 31.3 0 0024 12a31.3 31.3 0 00-.5-5.8zM9.6 15.6V8.4L15.8 12l-6.2 3.6z"/></svg></a>
</div>
</div>
<div class="footer-col">
<h4>Job Seekers</h4>
<ul>
<li><a href="#jobs">Browse Jobs</a></li>
<li><a href="#resume">Resume Builder</a></li>
<li><a href="#resume">Cover Letter Guide</a></li>
<li><a href="#salary">Salary Info</a></li>
<li><a href="#resources">Skill Courses</a></li>
<li><a href="#faq">Interview Prep</a></li>
</ul>
</div>
<div class="footer-col">
<h4>Community</h4>
<ul>
<li><a href="#networking">Networking Events</a></li>
<li><a href="#networking">Mentorship Program</a></li>
<li><a href="#stories">Success Stories</a></li>
<li><a href="#trends">Hiring Research</a></li>
<li><a href="#cta">The Arc Newsletter</a></li>
</ul>
</div>
<div class="footer-col">
<h4>Employers</h4>
<ul>
<li><a href="#contact">Post a Job</a></li>
<li><a href="#contact">Talent Search</a></li>
<li><a href="#contact">Pricing</a></li>
<li><a href="#trends">Labor Market Data</a></li>
<li><a href="#contact">Partner With Us</a></li>
</ul>
</div>
</div>
<div class="footer-bar">
<span>© <span id="year">2025</span> TalentArc, Inc. All rights reserved.</span>
<nav>
<a href="#">Privacy Policy</a>
<a href="#">Terms of Service</a>
<a href="#">Cookie Settings</a>
<a href="#">Accessibility</a>
</nav>
</div>
</div>
</footer>
<script>
(function(){
"use strict";
const $ = (s, c) => (c || document).querySelector(s);
const $$ = (s, c) => Array.from((c || document).querySelectorAll(s));
/* ---------- Footer year ---------- */
$("#year").textContent = new Date().getFullYear();
/* ---------- Sticky header ---------- */
const header = $("#siteHeader");
const onScroll = () => header.classList.toggle("scrolled", window.scrollY > 12);
window.addEventListener("scroll", onScroll, { passive: true });
onScroll();
/* ---------- Mobile menu ---------- */
const toggle = $("#menuToggle"), nav = $("#mainNav");
toggle.addEventListener("click", () => {
const open = nav.classList.toggle("open");
toggle.classList.toggle("open", open);
toggle.setAttribute("aria-expanded", open);
});
$$("#mainNav a").forEach(a => a.addEventListener("click", () => {
nav.classList.remove("open");
toggle.classList.remove("open");
toggle.setAttribute("aria-expanded", "false");
}));
/* ---------- Reveal on scroll ---------- */
const revealObs = new IntersectionObserver(entries => {
entries.forEach(e => {
if (e.isIntersecting) { e.target.classList.add("in"); revealObs.unobserve(e.target); }
});
}, { threshold: 0.12 });
$$(".reveal").forEach(el => revealObs.observe(el));
/* ---------- Animated counters ---------- */
const fmtNum = (v, d) => d > 0 ? v.toFixed(d) : Math.round(v).toLocaleString("en-US");
const countObs = new IntersectionObserver(entries => {
entries.forEach(entry => {
if (!entry.isIntersecting) return;
const el = entry.target;
countObs.unobserve(el);
const target = parseFloat(el.dataset.target);
const dec = parseInt(el.dataset.decimals || "0", 10);
const suffix = el.dataset.suffix || "";
const prefix = el.dataset.prefix || "";
const dur = 1600, t0 = performance.now();
const step = now => {
const p = Math.min((now - t0) / dur, 1);
const eased = 1 - Math.pow(1 - p, 3);
el.textContent = prefix + fmtNum(target * eased, dec) + suffix;
if (p < 1) requestAnimationFrame(step);
};
requestAnimationFrame(step);
});
}, { threshold: 0.5 });
$$(".stat-num, .trend-num").forEach(el => countObs.observe(el));
/* ---------- Scrollspy ---------- */
const navLinks = $$("#mainNav a");
const spyObs = new IntersectionObserver(entries => {
entries.forEach(e => {
if (e.isIntersecting) {
navLinks.forEach(a => a.classList.toggle("active", a.getAttribute("href") === "#" + e.target.id));
}
});
}, { rootMargin: "-38% 0px -55% 0px" });
["jobs","resume","salary","networking","stories","resources","contact"].forEach(id => {
const el = document.getElementById(id);
if (el) spyObs.observe(el);
});
/* ---------- Salary comparison tool ---------- */
const ROLES = {
"Software Engineer": 118000, "Product Manager": 122000, "Data Analyst": 86000,
"UX Designer": 98000, "Marketing Manager": 88000, "Financial Analyst": 84000,
"Registered Nurse": 82000, "Project Manager": 96000
};
const EXP = {
"Entry level (0–2 yrs)": 0.72, "Mid level (3–5 yrs)": 1.00,
"Senior (6–9 yrs)": 1.28, "Lead / Director (10+ yrs)": 1.55
};
const LOC = {
"Remote (US average)": 1.00, "San Francisco, CA": 1.34, "New York, NY": 1.27,
"Seattle, WA": 1.18, "Chicago, IL": 1.08, "Austin, TX": 1.06,
"Denver, CO": 1.04, "Atlanta, GA": 0.97
};
const CAP = 260000;
const usd = n => new Intl.NumberFormat("en-US", { style: "currency", currency: "USD", maximumFractionDigits: 0 }).format(n);
const roleSel = $("#roleSel"), expSel = $("#expSel"), locSel = $("#locSel"), curInput = $("#curInput");
Object.keys(ROLES).forEach(r => roleSel.add(new Option(r, r)));
Object.keys(EXP).forEach(r => expSel.add(new Option(r, r)));
Object.keys(LOC).forEach(r => locSel.add(new Option(r, r)));
expSel.selectedIndex = 1;
let displayed = 0;
function tweenMedian(to) {
const from = displayed, t0 = performance.now(), dur = 800;
const step = now => {
const p = Math.min((now - t0) / dur, 1);
const eased = 1 - Math.pow(1 - p, 3);
const v = from + (to - from) * eased;
$("#medianOut").textContent = usd(v);
if (p < 1) requestAnimationFrame(step); else displayed = to;
};
requestAnimationFrame(step);
}
function calc() {
const base = ROLES[roleSel.value];
const median = base * EXP[expSel.value] * LOC[locSel.value];
const low = median * 0.88, high = median * 1.14;
tweenMedian(median);
$("#lowOut").textContent = usd(low);
$("#highOut").textContent = usd(high);
$("#resultLabel").textContent = "Estimated market median · " + roleSel.value;
$("#resultSub").textContent = expSel.value + " · " + locSel.value + " · base salary";
const pct = v => Math.min(v / CAP * 100, 100);
$("#rangeFill").style.left = pct(low) + "%";
$("#rangeFill").style.width = (pct(high) - pct(low)) + "%";
$("#rangeMedian").style.left = pct(median) + "%";
const cur = parseFloat((curInput.value || "").replace(/[^0-9.]/g, ""));
const msg = $("#deltaMsg");
if (cur > 0) {
const diff = median - cur, pctv = Math.abs(diff / cur * 100).toFixed(1);
msg.innerHTML = diff >= 0
? "The market median is <b>" + usd(Math.abs(diff)) + " (" + pctv + "%) above</b> your current pay. That's real leverage — bring this range into your next review or negotiation."
: "You're earning <b>" + usd(Math.abs(diff)) + " (" + pctv + "%) above</b> the market median for this profile. Strong position — document your impact to defend it.";
msg.classList.add("show");
} else {
msg.classList.remove("show");
}
}
[roleSel, expSel, locSel].forEach(el => el.addEventListener("change", calc));
curInput.addEventListener("input", calc);
calc();
/* ---------- Job search filter ---------- */
const form = $("#jobSearchForm"), query = $("#jobQuery"), cards = $$(".path-card");
const note = $("#searchNote"), noteText = $("#searchNoteText");
function runFilter(q) {
const term = q.trim().toLowerCase();
let count = 0;
cards.forEach(card => {
const hay = (card.dataset.tags + " " + card.querySelector("h3").textContent).toLowerCase();
const match = !term || hay.includes(term);
card.style.display = match ? "" : "none";
if (match) count++;
});
if (term) {
noteText.textContent = count > 0
? count + " career path" + (count === 1 ? "" : "s") + " match \"" + q.trim() + "\" — " + (count * 1240).toLocaleString() + "+ related openings available."
: "No paths match \"" + q.trim() + "\" — try a broader keyword like \"data\" or \"marketing\".";
note.classList.add("show");
document.getElementById("jobs").scrollIntoView({ behavior: "smooth" });
} else {
note.classList.remove("show");
}
}
form.addEventListener("submit", e => { e.preventDefault(); runFilter(query.value); });
$("#searchReset").addEventListener("click", () => { query.value = ""; runFilter(""); });
$$(".chip").forEach(chip => chip.addEventListener("click", () => {
query.value = chip.dataset.q;
runFilter(chip.dataset.q);
}));
/* ---------- FAQ accordion ---------- */
$$(".faq-item").forEach(item => {
const btn = $(".faq-q", item), panel = $(".faq-a", item);
btn.addEventListener("click", () => {
const isOpen = item.classList.contains("open");
$$(".faq-item.open").forEach(o => {
o.classList.remove("open");
$(".faq-a", o).style.maxHeight = "0px";
$(".faq-q", o).setAttribute("aria-expanded", "false");
});
if (!isOpen) {
item.classList.add("open");
panel.style.maxHeight = panel.scrollHeight + "px";
btn.setAttribute("aria-expanded", "true");
}
});
});
/* ---------- Newsletter ---------- */
$("#newsForm").addEventListener("submit", e => {
e.preventDefault();
const email = $("#newsEmail").value.trim();
if (!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email)) {
$("#newsEmail").focus();
return;
}
$("#newsForm").style.display = "none";
$("#newsSuccess").style.display = "block";
});
})();
</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:53:13.832Z",
"url": "https://benchmark.aimac.invalid/e71cb32fe34f0b7f5ea0d327cd24ab1d83f97e45ccaa2d16bd164c09e0144e7b.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-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-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-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": "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": "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": "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": []
},
{
"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": "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 href=\"#\" class=\"brand\" aria-label=\"TalentArc 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 href=\"#\" class=\"brand\" aria-label=\"TalentArc home\">",
"target": [
".brand"
]
}
]
},
{
"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": [
{
"any": [],
"all": [],
"none": [
{
"id": "deprecatedrole",
"data": null,
"relatedNodes": [],
"impact": "minor",
"message": "ARIA role is not deprecated"
}
],
"impact": null,
"html": "<form class=\"search-panel reveal in\" style=\"--d:.24s\" id=\"jobSearchForm\" role=\"search\">",
"target": [
"#jobSearchForm"
]
}
]
},
{
"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 href=\"#\" class=\"brand\" aria-label=\"TalentArc home\">",
"target": [
".brand"
]
}
]
},
{
"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": [
{
"any": [
{
"id": "aria-required-attr",
"data": null,
"relatedNodes": [],
"impact": "critical",
"message": "All required ARIA attributes are present"
}
],
"all": [],
"none": [],
"impact": null,
"html": "<form class=\"search-panel reveal in\" style=\"--d:.24s\" id=\"jobSearchForm\" role=\"search\">",
"target": [
"#jobSearchForm"
]
}
]
},
{
"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": [
{
"any": [],
"all": [],
"none": [
{
"id": "invalidrole",
"data": null,
"relatedNodes": [],
"impact": "critical",
"message": "ARIA role is valid"
},
{
"id": "abstractrole",
"data": null,
"relatedNodes": [],
"impact": "critical",
"message": "Abstract roles are not used"
},
{
"id": "unsupportedrole",
"data": null,
"relatedNodes": [],
"impact": "critical",
"message": "ARIA role is supported"
}
],
"impact": null,
"html": "<form class=\"search-panel reveal in\" style=\"--d:.24s\" id=\"jobSearchForm\" role=\"search\">",
"target": [
"#jobSearchForm"
]
}
]
},
{
"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 href=\"#\" class=\"brand\" aria-label=\"TalentArc 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 href=\"#\" class=\"brand\" aria-label=\"TalentArc home\">",
"target": [
".brand"
]
}
]
},
{
"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": [
{
"any": [],
"all": [
{
"id": "autocomplete-valid",
"data": null,
"relatedNodes": [],
"impact": "serious",
"message": "the autocomplete attribute is correctly formatted"
}
],
"none": [],
"impact": null,
"html": "<input type=\"text\" id=\"curInput\" inputmode=\"numeric\" placeholder=\"e.g. 85000\" autocomplete=\"off\">",
"target": [
"#curInput"
]
}
]
},
{
"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": "<h1 class=\"reveal in\" style=\"--d:.08s\">Find work that <span class=\"hl\">finds you back.</span></h1>",
"target": [
"h1"
]
}
]
},
{
"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 type=\"submit\" class=\"btn btn-ink\">Search Jobs</button>",
"target": [
"#jobSearchForm > .btn-ink.btn[type=\"submit\"]"
]
}
]
},
{
"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 class=\"reveal in\" style=\"--d:.08s\">Find work that <span class=\"hl\">finds you back.</span></h1>",
"target": [
"h1"
]
},
{
"html": "<h2>Six fields. Thousands of doors open right now.</h2>",
"target": [
"#jobs > .wrap > .section-head.reveal > h2"
]
},
{
"html": "<h3>Technology & Engineering</h3>",
"target": [
".path-card:nth-child(1) > .path-body > h3"
]
},
{
"html": "<h3>Healthcare & Life Sciences</h3>",
"target": [
".path-card:nth-child(2) > .path-body > h3"
]
},
{
"html": "<h3>Finance & Accounting</h3>",
"target": [
".path-card:nth-child(3) > .path-body > h3"
]
},
{
"html": "<h3>Marketing & Creative</h3>",
"target": [
".path-card:nth-child(4) > .path-body > h3"
]
},
{
"html": "<h3>Data & Analytics</h3>",
"target": [
".path-card:nth-child(5) > .path-body > h3"
]
},
{
"html": "<h3>Operations & Project Management</h3>",
"target": [
".path-card:nth-child(6) > .path-body > h3"
]
},
{
"html": "<h2 class=\"reveal\" style=\"--d:.08s\">Beat the bots first. Then win the human.</h2>",
"target": [
".resume-content > h2"
]
},
{
"html": "<h2>Know your number before they name theirs.</h2>",
"target": [
"#salary > .wrap > .section-head.reveal > h2"
]
},
{
"html": "<h3>Salary Comparison Tool</h3>",
"target": [
".tool-controls > div:nth-child(1) > h3"
]
},
{
"html": "<h2 style=\"color:#fff\">The hiring landscape, in four numbers.</h2>",
"target": [
"#trends > .wrap > .section-head.reveal > h2"
]
},
{
"html": "<h3>Pay transparency goes mainstream</h3>",
"target": [
".trend-card.reveal:nth-child(1) > h3"
]
},
{
"html": "<h3>Skills over degrees</h3>",
"target": [
".trend-card.reveal:nth-child(2) > h3"
]
},
{
"html": "<h3>Hybrid is the default</h3>",
"target": [
".trend-card.reveal:nth-child(3) > h3"
]
},
{
"html": "<h3>AI fluency pays</h3>",
"target": [
".trend-card.reveal:nth-child(4) > h3"
]
},
{
"html": "<h2>Real people. Real offers. Real leverage.</h2>",
"target": [
"#stories > .wrap > .section-head.reveal > h2"
]
},
{
"html": "<h2 class=\"reveal\" style=\"--d:.06s\">Your network is still the shortest path to an offer.</h2>",
"target": [
".net-main > h2"
]
},
{
"html": "<h3>Popular searches</h3>",
"target": [
".side-panel.reveal:nth-child(1) > h3"
]
},
{
"html": "<h3>Trending skill courses</h3>",
"target": [
".side-panel.reveal:nth-child(2) > h3"
]
},
{
"html": "<h3>Member spotlight</h3>",
"target": [
".mini-quote > h3"
]
},
{
"html": "<h2>Everything you're wondering, answered.</h2>",
"target": [
"#faq > .wrap > .section-head.reveal > h2"
]
},
{
"html": "<h2>Get <em>The Arc</em> \u2014 the career briefing 210,000 people read weekly.</h2>",
"target": [
".cta-inner > .reveal:nth-child(1) > h2"
]
},
{
"html": "<h4>Job Seekers</h4>",
"target": [
".footer-col:nth-child(2) > h4"
]
},
{
"html": "<h4>Community</h4>",
"target": [
".footer-col:nth-child(3) > h4"
]
},
{
"html": "<h4>Employers</h4>",
"target": [
".footer-col:nth-child(4) > h4"
]
}
],
"impact": "serious",
"message": "Page has a heading"
},
{
"id": "landmark",
"data": null,
"relatedNodes": [
{
"html": "<main>",
"target": [
"main"
]
}
],
"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": "#0d1b14",
"bgColor": "#d7f24b",
"contrastRatio": 14.09,
"fontSize": "10.2pt (13.6px)",
"fontWeight": "normal",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [],
"impact": "serious",
"message": "Element has sufficient color contrast of 14.09"
}
],
"all": [],
"none": [],
"impact": null,
"html": "<a href=\"#jobs\" class=\"btn btn-lime btn-sm\">Create Profile</a>",
"target": [
".btn-lime"
]
}
]
},
{
"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": "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": [
{
"any": [
{
"id": "duplicate-id-aria",
"data": "roleSel",
"relatedNodes": [],
"impact": "critical",
"message": "Document has no elements referenced with ARIA or labels that share the same id attribute"
}
],
"all": [],
"none": [],
"impact": null,
"html": "<select id=\"roleSel\">",
"target": [
"#roleSel"
]
}
]
},
{
"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": [],
"impact": "moderate",
"message": "Form field does not have multiple label elements"
}
],
"impact": null,
"html": "<input type=\"text\" id=\"jobQuery\" placeholder=\"Job title, skill, or keyword\" aria-label=\"Job title, skill, or keyword\">",
"target": [
"#jobQuery"
]
}
]
},
{
"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/96x96/123527/D7F24B?text=TA&font=montserrat\" alt=\"TalentArc logo\" width=\"42\" height=\"42\">",
"target": [
"img[width=\"42\"]"
]
}
]
},
{
"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": "aria-label",
"data": null,
"relatedNodes": [],
"impact": "critical",
"message": "aria-label attribute exists and is not empty"
},
{
"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=\"jobQuery\" placeholder=\"Job title, skill, or keyword\" aria-label=\"Job title, skill, or keyword\">",
"target": [
"#jobQuery"
]
}
]
},
{
"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"
},
{
"id": "aria-label",
"data": null,
"relatedNodes": [],
"impact": "serious",
"message": "aria-label attribute exists and is not empty"
}
],
"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=\"#\" class=\"brand\" aria-label=\"TalentArc home\">",
"target": [
".brand"
]
}
]
},
{
"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": [
"#mainNav > 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><a href=\"#jobs\">Find Jobs</a></li>",
"target": [
"#mainNav > 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/96x96/123527/D7F24B?text=TA&font=montserrat\" alt=\"TalentArc logo\" width=\"42\" height=\"42\">",
"target": [
"img[width=\"42\"]"
]
}
]
},
{
"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": [
{
"any": [
{
"id": "aria-label",
"data": null,
"relatedNodes": [],
"impact": "critical",
"message": "aria-label attribute exists and is not empty"
}
],
"all": [],
"none": [
{
"id": "hidden-explicit-label",
"data": null,
"relatedNodes": [],
"impact": "critical",
"message": "Form element has a visible explicit <label>"
}
],
"impact": null,
"html": "<select id=\"jobLocation\" aria-label=\"Location\">",
"target": [
"#jobLocation"
]
}
]
},
{
"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-size",
"data": {
"minSize": 24,
"width": 189,
"height": 42
},
"relatedNodes": [],
"impact": "serious",
"message": "Control has sufficient size (189px by 42px, should be at least 24px by 24px)"
},
{
"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=\"#\" class=\"brand\" aria-label=\"TalentArc home\">",
"target": [
".brand"
]
}
]
}
],
"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": "16.2pt (21.6px)",
"fontWeight": "normal",
"messageKey": "bgGradient",
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<section 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": "<span class=\"brand-name\">TalentArc</span>",
"target": [
".brand-text > .brand-name"
],
"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": "#8d918a",
"bgColor": "#f5f2ea",
"contrastRatio": 2.86,
"fontSize": "13.8pt (18.4px)",
"fontWeight": "normal",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<div class=\"trust\">",
"target": [
".trust"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 2.86 (foreground color: #8d918a, background color: #f5f2ea, font size: 13.8pt (18.4px), font weight: normal). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span>Northwind</span>",
"target": [
".trust-marks > span:nth-child(1)"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 2.86 (foreground color: #8d918a, background color: #f5f2ea, font size: 13.8pt (18.4px), font weight: normal). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#8d918a",
"bgColor": "#f5f2ea",
"contrastRatio": 2.86,
"fontSize": "13.8pt (18.4px)",
"fontWeight": "normal",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<div class=\"trust\">",
"target": [
".trust"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 2.86 (foreground color: #8d918a, background color: #f5f2ea, font size: 13.8pt (18.4px), font weight: normal). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span>Helios Labs</span>",
"target": [
".trust-marks > span:nth-child(2)"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 2.86 (foreground color: #8d918a, background color: #f5f2ea, font size: 13.8pt (18.4px), font weight: normal). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#8d918a",
"bgColor": "#f5f2ea",
"contrastRatio": 2.86,
"fontSize": "13.8pt (18.4px)",
"fontWeight": "normal",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<div class=\"trust\">",
"target": [
".trust"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 2.86 (foreground color: #8d918a, background color: #f5f2ea, font size: 13.8pt (18.4px), font weight: normal). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span>Vantage Group</span>",
"target": [
".trust-marks > span:nth-child(3)"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 2.86 (foreground color: #8d918a, background color: #f5f2ea, font size: 13.8pt (18.4px), font weight: normal). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#8d918a",
"bgColor": "#f5f2ea",
"contrastRatio": 2.86,
"fontSize": "13.8pt (18.4px)",
"fontWeight": "normal",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<div class=\"trust\">",
"target": [
".trust"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 2.86 (foreground color: #8d918a, background color: #f5f2ea, font size: 13.8pt (18.4px), font weight: normal). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span>Bluepine</span>",
"target": [
".trust-marks > span:nth-child(4)"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 2.86 (foreground color: #8d918a, background color: #f5f2ea, font size: 13.8pt (18.4px), font weight: normal). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#8d918a",
"bgColor": "#f5f2ea",
"contrastRatio": 2.86,
"fontSize": "13.8pt (18.4px)",
"fontWeight": "normal",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<div class=\"trust\">",
"target": [
".trust"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 2.86 (foreground color: #8d918a, background color: #f5f2ea, font size: 13.8pt (18.4px), font weight: normal). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span>Orbita</span>",
"target": [
"span:nth-child(5)"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 2.86 (foreground color: #8d918a, background color: #f5f2ea, font size: 13.8pt (18.4px), font weight: normal). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#8d918a",
"bgColor": "#f5f2ea",
"contrastRatio": 2.86,
"fontSize": "13.8pt (18.4px)",
"fontWeight": "normal",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<div class=\"trust\">",
"target": [
".trust"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 2.86 (foreground color: #8d918a, background color: #f5f2ea, font size: 13.8pt (18.4px), font weight: normal). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span>Kestrel & Co.</span>",
"target": [
".trust-marks > span:nth-child(6)"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 2.86 (foreground color: #8d918a, background color: #f5f2ea, font size: 13.8pt (18.4px), font weight: normal). Expected contrast ratio of 4.5:1"
},
{
"any": [
{
"id": "color-contrast",
"data": {
"fgColor": "#5b6a61",
"bgColor": "#e0e2db",
"contrastRatio": 4.36,
"fontSize": "7.2pt (9.6px)",
"fontWeight": "normal",
"messageKey": null,
"expectedContrastRatio": "4.5:1",
"shadowColor": null
},
"relatedNodes": [
{
"html": "<header class=\"site-header scrolled\" id=\"siteHeader\">",
"target": [
"#siteHeader"
]
},
{
"html": "<div class=\"salary-tool reveal in\">",
"target": [
".salary-tool"
]
}
],
"impact": "serious",
"message": "Element has insufficient color contrast of 4.36 (foreground color: #5b6a61, background color: #e0e2db, font size: 7.2pt (9.6px), font weight: normal). Expected contrast ratio of 4.5:1"
}
],
"all": [],
"none": [],
"impact": "serious",
"html": "<span class=\"brand-tag\">Chart your course</span>",
"target": [
".brand-tag"
],
"failureSummary": "Fix any of the following:\n Element has insufficient color contrast of 4.36 (foreground color: #5b6a61, background color: #e0e2db, font size: 7.2pt (9.6px), font weight: normal). Expected contrast ratio of 4.5:1"
}
]
}
],
"coverage": {
"contract": "main-document-vertical-scroll",
"complete": true,
"positions": [
{
"y": 0,
"height": 10033
},
{
"y": 576,
"height": 10033
},
{
"y": 1152,
"height": 10033
},
{
"y": 1728,
"height": 10033
},
{
"y": 2304,
"height": 10033
},
{
"y": 2880,
"height": 10033
},
{
"y": 3456,
"height": 10033
},
{
"y": 4032,
"height": 10033
},
{
"y": 4608,
"height": 10033
},
{
"y": 5184,
"height": 10033
},
{
"y": 5760,
"height": 10033
},
{
"y": 6336,
"height": 10033
},
{
"y": 6912,
"height": 10033
},
{
"y": 7488,
"height": 10033
},
{
"y": 8064,
"height": 10033
},
{
"y": 8640,
"height": 10033
},
{
"y": 9216,
"height": 10033
},
{
"y": 9313,
"height": 10033
}
],
"scans": 19,
"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: "Contact", "Networking", "Salary Info".
- **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: "Success Stories", "Industry Trends", "Resume Guide".
- **Content Depth:** Populate each section with **substantial, realistic text** (multiple sentences/paragraphs). Use authentic industry language and terminology like: "skill assessment", "applicant tracking", "cover letter".
- **Visuals:** Integrate relevant placeholder images logically within the content sections.
- **Calls to Action:** Include clear and contextually relevant CTAs. Use strong verbs similar to: "Create Profile", "Upload Resume", "Connect Now".
- **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: "salary comparison".
- **SIDEBAR (Optional):** If your design includes a sidebar, populate it with **useful, relevant content**. Ideas: "popular searches", "skill courses", "success stories".
- **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.