:root {
  --navy: #092348;
  --ink: #12233b;
  --muted: #596677;
  --gold: #d0a34a;
  --gold-dark: #816022;
  --line: #dde2e9;
  --soft: #f4f6f9;
  --cream: #faf7ef;
  --white: #fff;
  --radius: 14px;
  color-scheme: light;
  font-family: var(--wow-font);
  color: var(--wow-ink);
  background: var(--white);
  font-synthesis: none;
  scroll-behavior: smooth;
}
* { box-sizing: border-box; }
/* Reading text and secondary labels receive a subtle 1 px increase. */
body { margin: 0; font-size: var(--wow-text-lead); line-height: 1.65; }
button, input, select, textarea { font: inherit; }
a { color: inherit; }
img { display: block; max-width: 100%; height: auto; }
button, a, input, select, textarea, summary { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 3px solid var(--gold-dark); outline-offset: 5px; }
[hidden] { display: none !important; }
.container { width: min(1240px, calc(100% - 80px)); margin-inline: auto; }
.skip-link { position: absolute; left: 16px; top: -100px; z-index: 20; background: var(--navy); color: white; padding: 10px 18px; }
.skip-link:focus { top: 10px; }
.site-header { background: rgba(255,255,255,.98); border-top: 3px solid var(--gold); border-bottom: 1px solid var(--line); position: sticky; top: 0; z-index: 10; }
.header-inner { min-height: 96px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand { display: block; flex: 0 0 auto; width: var(--logo-header-width, 320px); max-width: calc(100% - 68px); text-decoration: none; }
.brand img { width: 100%; height: auto; }
.main-nav { display: flex; align-items: center; gap: 22px; }
.main-nav > a { font-size: var(--wow-text-lead); font-weight: 600; text-decoration: none; padding: 10px 0; white-space: nowrap; }
.main-nav > a[aria-current="page"] { color: var(--wow-gold-text); }
.main-nav > a:hover { color: var(--wow-gold-text); }
.main-nav .nav-cta { background: var(--navy); color: var(--white); border-radius: 6px; padding: 13px 18px; }
.main-nav .nav-cta:hover { background: #153761; color: white; }
.nav-toggle { display: none; width: 44px; height: 44px; background: white; border: 1px solid var(--line); border-radius: 6px; }
.nav-toggle span, .nav-toggle::before, .nav-toggle::after { content: ""; display: block; width: 20px; height: 2px; margin: 5px auto; background: var(--navy); }
.eyebrow { margin: 0 0 18px; font-size: var(--wow-text-body); letter-spacing: 1.5px; text-transform: uppercase; font-weight: 700; color: var(--wow-gold-text); }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { color: var(--wow-navy); font-weight: 600; }
h1 { font-size: var(--wow-title-page); line-height: 1.2; letter-spacing: -3px; margin-bottom: 24px; }
h2 { font-size: var(--wow-title-section); line-height: 1.3; letter-spacing: -1.8px; margin-bottom: 20px; }
h3 { font-size: var(--wow-text-card); letter-spacing: -.7px; line-height: 1.4; margin-bottom: 12px; }
.display-accent { color: var(--wow-gold-text); font-family: var(--wow-font); font-style: italic; font-weight: 400; }
.lead { color: var(--wow-muted); font-size: var(--wow-text-lead); line-height: 1.75; max-width: 580px; margin-bottom: 26px; }
.actions { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; }
.button { min-height: 50px; max-width: 100%; display: inline-flex; justify-content: center; align-items: center; gap: 20px; text-decoration: none; border: 1px solid transparent; border-radius: 6px; padding: 12px 22px; font-size: var(--wow-text-control); font-weight: 600; cursor: pointer; line-height: 1.5; text-align: center; transition: background .15s, transform .15s; }
.button:hover { transform: translateY(-1px); }
.button-primary { background: var(--navy); color: white; }
.button-primary:hover { background: #183b66; }
.button-outline { border-color: var(--line); background: white; color: var(--wow-navy); }
.button-outline:hover { border-color: var(--navy); }
.button-gold { background: var(--gold); color: var(--wow-navy); }
.button-gold:hover { background: #ddba74; }
.button-light { background: white; color: var(--wow-navy); }
.button-ghost { border-color: #5a708f; color: white; background: transparent; }
.text-link { display: inline-flex; align-items: center; gap: 14px; font-size: var(--wow-text-lead); font-weight: 600; color: var(--wow-navy); text-decoration: none; padding: 8px 0; }
.text-link:hover { color: var(--wow-gold-text); }
.hero { padding: 65px 0 54px; }
.hero-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: center; gap: 65px; }
.hero-copy { padding-block: 22px; }
.hero-visual { position: relative; }
.hero-photo { width: 100%; height: 560px; object-fit: cover; border-radius: 70px 14px 70px 14px; }
.photo-caption { position: absolute; left: -25px; bottom: 34px; max-width: calc(100% - 30px); padding: 20px 24px; background: white; border-left: 3px solid var(--gold); box-shadow: 0 10px 35px rgba(9,35,72,.1); border-radius: 0 8px 8px 0; }
.photo-caption strong { display: block; font-size: var(--wow-text-lead); font-weight: 600; }
.photo-caption span { font-size: var(--wow-text-body); color: var(--wow-muted); }
.hero-note { margin: 26px 0 0; color: var(--wow-muted); font-size: var(--wow-text-body); }
.sector-band { padding: 26px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.sectors { display: flex; gap: 22px; justify-content: space-between; align-items: center; flex-wrap: wrap; }
.sectors .sector-label { font-size: var(--wow-text-body); color: var(--wow-muted); max-width: 170px; line-height: 1.6; text-transform: uppercase; letter-spacing: 1px; }
.sectors strong { font-size: var(--wow-text-subtitle); color: var(--wow-navy); font-weight: 500; }
.section { padding: 90px 0; }
.section-soft { background: var(--soft); }
.section-cream { background: var(--cream); }
.section-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 35px; margin-bottom: 36px; }
.section-head h2 { margin-bottom: 0; max-width: 660px; }
.section-head p { max-width: 380px; margin-bottom: 0; color: var(--wow-muted); font-size: var(--wow-text-body); }
.section-head .eyebrow { font-size: var(--wow-text-body); }
.services-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.service-card { border: 1px solid var(--line); border-radius: var(--radius); padding: 28px; background: white; display: flex; flex-direction: column; min-height: 285px; transition: border-color .18s, transform .18s; }
.service-card:hover { border-color: var(--gold); transform: translateY(-3px); }
.service-card h3 { font-size: var(--wow-text-card); }
.service-card p { font-size: var(--wow-text-lead); color: var(--wow-muted); margin-bottom: 22px; }
.service-actions { display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:auto; }
.service-actions .button { max-width:100%;text-align:center; }
.service-card .service-availability { align-self:flex-start;margin-bottom:12px;padding:4px 10px;border-radius:6px;background:var(--cream);color:var(--wow-gold-text);font-size:var(--wow-text-control);font-weight:600; }
.employer-services { padding-top:56px; }
.services-heading { display:block;margin-bottom:28px; }
.services-heading h2 { margin-bottom:12px; }
.services-heading p { max-width:65ch;font-size:var(--wow-text-lead); }
.split { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 70px; align-items: center; }
.split-photo { width: 100%; height: 480px; object-fit: cover; border-radius: 12px 65px 12px 12px; }
.copy p { color: var(--wow-muted); }
.process-list { list-style: none; padding: 0; margin: 30px 0 0; }
.process-list li { display: grid; grid-template-columns: 35px minmax(0,1fr); gap: 20px; padding: 20px 0; border-top: 1px solid var(--line); }
.process-list .step { color: var(--wow-gold-text); font-size: var(--wow-text-body); font-weight: 600; padding-top: 3px; }
.process-list h3 { font-size: var(--wow-text-card); line-height: 1.4; margin-bottom: 8px; }
.process-list p { color: var(--wow-muted); font-size: var(--wow-text-body); margin-bottom: 0; }
.blue-section { background: var(--navy); color: white; }
.blue-section .eyebrow { color: var(--wow-gold-light); }
.blue-section h2, .blue-section h3 { color: white; }
.blue-section p { color: var(--wow-on-dark); }
.blue-section .split-photo { height: 430px; }
.benefit-list { padding-left: 18px; display: grid; gap: 10px; color: var(--wow-on-dark); margin: 25px 0; font-size: var(--wow-text-body); }
.job-card { border: 1px solid var(--line); border-radius: var(--radius); background: white; padding: 30px; display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 24px; align-items: center; }
.job-card h3 { font-size: var(--wow-text-card); margin: 12px 0; }
.job-card p { color: var(--wow-muted); font-size: var(--wow-text-body); max-width: 700px; margin-bottom: 18px; }
.tag { display: inline-block; padding: 5px 10px; border-radius: 4px; background: var(--cream); color: var(--wow-gold-text); font-size: var(--wow-text-body); font-weight: 600; }
.tag.closed { background: #eef0f3; color: var(--wow-muted); }
.tag-talent { background: #eef2f7; color: var(--wow-navy); line-height: 1.6; }
.talent-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.talent-card { min-width: 0; border: 1px solid var(--line); border-radius: var(--radius); background: white; padding: 26px; display: flex; flex-direction: column; align-items: flex-start; }
.talent-card h3 { margin: 19px 0 14px; font-size: var(--wow-text-card); line-height: 1.4; }
.talent-card > p { color: var(--wow-muted); font-size: var(--wow-text-lead); margin-bottom: 16px; }
.talent-sector { font-size: var(--wow-text-body); color: var(--wow-muted); display: block; margin-bottom: 23px; }
.talent-actions { margin-top: auto; width: 100%; }
.talent-actions .button { width: 100%; padding-inline: 14px; }
.talent-actions .text-link { display: flex; justify-content: center; margin-top: 8px; }
.talent-card-compact { padding: 23px; }
.talent-card-compact h3 { font-size: var(--wow-text-card); }
.talent-section-head { display: grid; grid-template-columns: 1fr 1fr; align-items: end; gap: 34px; margin: 45px 0 25px; }
.talent-section-head .eyebrow { margin-bottom: 12px; }
.talent-section-head h3 { font-size: var(--wow-text-card); margin-bottom: 0; }
.talent-section-head > p { color: var(--wow-muted); margin-bottom: 0; font-size: var(--wow-text-lead); }
.opportunity-group + .opportunity-group { margin-top: 52px; }
.opportunity-group-head { max-width: 860px; margin-bottom: 26px; }
.opportunity-group-head .eyebrow { margin-bottom: 10px; }
.opportunity-group-head h2 { margin-bottom: 14px; }
.opportunity-group-head > p:last-child { color: var(--wow-muted); font-size: var(--wow-text-lead); margin-bottom: 0; }
.job-meta { display: flex; flex-wrap: wrap; gap: 10px 20px; font-size: var(--wow-text-body); color: var(--wow-muted); }
.job-meta span+span::before { content: "|"; margin-right: 20px; color: #b4bfcb; }
.job-side { align-self: center; text-align: right; }
.job-side small { display: block; margin-bottom: 14px; color: var(--wow-muted); font-size: var(--wow-text-body); }
.cta-band { background: var(--cream); padding: 54px 0; }
.cta-inner { display: flex; justify-content: space-between; gap: 35px; align-items: center; }
.cta-inner h2 { font-size: var(--wow-title-section); margin-bottom: 10px; }
.cta-inner p { color: var(--wow-muted); margin-bottom: 0; }
.site-footer { background: #071b39; color: var(--wow-on-dark); padding: 52px 0 20px; }
.footer-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1.1fr; gap: 45px; padding-bottom: 38px; }
.footer-grid .footer-brand { background: transparent; padding: 0; border: 0; width: var(--logo-footer-width, 280px); max-width: 100%; margin-bottom: 24px; }
.footer-brand img { width: 100%; height: auto; }
.footer-about { font-size: var(--wow-text-body); max-width: 270px; }
.footer-grid h3 { color: white; font-size: var(--wow-text-card); letter-spacing: .4px; margin-bottom: 18px; }
.footer-grid a { display: block; font-size: var(--wow-text-body); margin-bottom: 9px; text-decoration: none; overflow-wrap: anywhere; }
.footer-grid a:hover { color: white; }
.footer-bottom { border-top: 1px solid #30415c; padding-top: 18px; display: flex; justify-content: space-between; flex-wrap: wrap; gap: 12px; font-size: var(--wow-text-body); }
.footer-bottom a { color: inherit; text-decoration: none; }
.page-hero { background: var(--soft); padding: 60px 0 66px; }
.page-hero h1 { max-width: 880px; font-size: var(--wow-title-page); }
.page-hero p.lead { max-width: 780px; margin-bottom: 0; }
.breadcrumbs { display: flex; flex-wrap: wrap; gap: 10px; font-size: var(--wow-text-body); color: var(--wow-muted); margin-bottom: 28px; }
.breadcrumbs a { text-decoration: none; }
.breadcrumbs a:hover { text-decoration: underline; }
.intro-strip { display: grid; grid-template-columns: 1fr 2fr; gap: 65px; align-items: start; }
.intro-strip h2 { font-size: var(--wow-title-section); }
.intro-strip p { margin: 0; color: var(--wow-muted); font-size: var(--wow-text-lead); }
.team-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.team-card { min-width: 0; padding: 30px; border: 1px solid var(--line); border-top: 3px solid var(--gold); border-radius: var(--radius); background: white; }
.team-initials { display: grid; place-items: center; width: 64px; height: 64px; margin-bottom: 24px; border: 1px solid #e5d4ae; border-radius: 12px; background: var(--cream); color: var(--wow-navy); font-size: var(--wow-text-card); font-weight: 600; letter-spacing: 1px; }
.team-card h3 { font-size: var(--wow-text-card); margin-bottom: 10px; }
.team-card p { color: var(--wow-muted); font-size: var(--wow-text-lead); }
.team-card .team-role { color: var(--wow-navy); font-weight: 600; font-size: var(--wow-text-lead); line-height: 1.5; margin-bottom: 10px; }
.team-card .team-background { font-size: var(--wow-text-body); padding-bottom: 20px; margin-bottom: 20px; border-bottom: 1px solid var(--line); }
.team-card .team-contribution { margin-bottom: 0; }
.team-grid.team-support-grid { grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 24px; }
.about-preview-notice { padding: 18px 24px; background: var(--cream); border-block: 2px solid var(--gold); color: var(--navy); font-size: var(--wow-text-lead); }
.about-preview-notice p { max-width: 1000px; margin: 6px 0 0; }
.about-hero { padding-block: 44px; }
.about-hero-actions { margin-top: 28px; }
.about-origin p:not(.eyebrow) { color: var(--wow-muted); }
.about-origin .about-sector-note { margin-bottom: 0; color: var(--wow-navy); font-weight: 600; }
.about-services { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.about-service { display: flex; flex-direction: column; min-width: 0; padding: 28px; border: 1px solid var(--line); border-top: 3px solid var(--gold); border-radius: var(--radius); background: white; }
.about-service p { color: var(--wow-muted); }
.about-service .text-link { margin-top: auto; line-height: 1.5; }
.about-method { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 28px; list-style: none; padding: 0; margin: 0; }
.about-method li { min-width: 0; border-top: 2px solid var(--gold); padding-top: 20px; }
.about-method .step { display: block; color: var(--wow-gold-text); font-size: var(--wow-text-subtitle); font-weight: 700; margin-bottom: 14px; }
.about-method h3 { font-size: var(--wow-text-card); }
.about-method p { color: var(--wow-muted); margin-bottom: 0; }
.about-method-note { margin: 26px 0 0; color: var(--wow-muted); font-size: var(--wow-text-body); }
.about-advisory { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(0,1fr); gap: 60px; align-items: start; }
.about-advisory p:not(.eyebrow) { color: var(--wow-muted); }
.about-contact-duties { padding: 30px; border-radius: var(--radius); background: var(--soft); }
.about-contact-duties h3 { font-size: var(--wow-text-card); }
.about-contact-duties .check-list { margin-bottom: 0; }
.about-candidate-bridge p:not(.eyebrow) { max-width: 720px; color: var(--wow-muted); margin-bottom: 0; }
@media(max-width:1000px) {
  .about-services { grid-template-columns: minmax(0,1fr); }
  .team-grid.team-support-grid { grid-template-columns: minmax(0,1fr); }
  .about-method { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .about-advisory { gap: 30px; }
}
@media(max-width:650px) {
  .about-hero { padding-block: 30px; }
  .about-hero-actions { align-items: stretch; flex-direction: column; }
  .about-hero-actions .button { width: 100%; }
  .about-method, .about-advisory { grid-template-columns: minmax(0,1fr); }
  .about-service, .about-contact-duties { padding: 25px; }
}
.info-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.info-item { border-top: 2px solid var(--gold); padding: 24px 0; }
.info-item h3 { font-size: var(--wow-text-card); }
.info-item p { color: var(--wow-muted); font-size: var(--wow-text-body); margin-bottom: 0; }
.page-hero-photo { height: 430px; width: 100%; object-fit: cover; border-radius: 14px; }
.small-title { font-size: var(--wow-title-section); }
.faq { max-width: 920px; }
details { border-top: 1px solid var(--line); }
details:last-child { border-bottom: 1px solid var(--line); }
summary { list-style: none; display: flex; justify-content: space-between; gap: 20px; cursor: pointer; padding: 22px 0; color: var(--wow-navy); font-size: var(--wow-text-lead); font-weight: 600; }
summary::-webkit-details-marker { display: none; }
summary::after { content: "+"; color: var(--gold-dark); font-size: 22px; font-weight: 400; line-height: 1; }
details[open] summary::after { content: "−"; }
details p { color: var(--wow-muted); font-size: var(--wow-text-body); max-width: 760px; padding-right: 28px; margin-bottom: 25px; }
.choices-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; }
.choice { background: white; border: 1px solid var(--line); padding: 34px; border-radius: var(--radius); }
.choice p { color: var(--wow-muted); font-size: var(--wow-text-body); }
.choice .eyebrow { font-size: var(--wow-text-body); }
.check-list { padding-left: 18px; color: var(--wow-muted); display: grid; gap: 12px; font-size: var(--wow-text-body); }
.filters { display: grid; grid-template-columns: minmax(0,1fr) 230px auto; gap: 18px; align-items: end; margin-bottom: 25px; }
label { display: block; color: var(--wow-navy); font-size: var(--wow-text-control); font-weight: 600; margin-bottom: 8px; }
input, select, textarea { border: 1px solid #c7d0dc; border-radius: 6px; background: white; color: var(--wow-ink); min-height: 48px; width: 100%; padding: 11px 13px; font-size: var(--wow-text-subtitle); }
textarea { min-height: 135px; resize: vertical; }
.filter-status { color: var(--muted); font-size: var(--wow-text-body); margin-bottom: 22px; }
.empty-state { background: var(--soft); padding: 35px; border-radius: var(--radius); }
.empty-state p { color: var(--wow-muted); }
.job-detail-grid { display: grid; grid-template-columns: minmax(0,1.7fr) minmax(0,1fr); gap: 65px; align-items: start; }
.job-content h2 { font-size: var(--wow-title-section); margin-top: 35px; }
.job-content h2:first-child { margin-top: 0; }
.job-content p, .job-content li { color: var(--wow-muted); font-size: var(--wow-text-body); }
.job-content ul { padding-left: 20px; display: grid; gap: 12px; }
.job-facts { border: 1px solid var(--line); border-radius: var(--radius); padding: 28px; background: var(--soft); }
.job-facts h2 { font-size: var(--wow-title-section); }
.job-facts dl { margin: 0 0 26px; }
.job-facts dt { color: var(--wow-muted); font-size: var(--wow-text-body); margin-top: 18px; }
.job-facts dd { color: var(--wow-navy); font-size: var(--wow-text-body); font-weight: 500; margin-left: 0; }
.job-facts .button { width: 100%; }
.job-facts .small-note { font-size: var(--wow-text-body); color: var(--wow-muted); margin: 15px 0 0; }
.notice { border-left: 3px solid var(--gold); padding: 15px 20px; background: var(--cream); font-size: var(--wow-text-body); color: var(--ink); margin: 24px 0; }
.contact-layout { display: grid; grid-template-columns: minmax(0,1.5fr) minmax(0,1fr); gap: 70px; align-items: start; }
.form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.full { grid-column: 1/-1; }
.form-note { color: var(--wow-muted); font-size: var(--wow-text-body); }
.consent { display: flex; gap: 10px; font-weight: 400; line-height: 1.6; font-size: var(--wow-text-body); align-items: flex-start; }
.consent input { width: 18px; height: 18px; min-height: 18px; padding: 0; margin: 3px 0 0; flex: 0 0 18px; accent-color: var(--navy); }
.consent a { text-decoration: underline; }
.contact-aside { background: var(--soft); padding: 30px; border-radius: var(--radius); }
.contact-aside h2 { font-size: var(--wow-title-section); }
.contact-aside p { color: var(--wow-muted); font-size: var(--wow-text-body); }
.contact-channel { padding: 20px 0; border-top: 1px solid var(--line); }
.contact-channel span { display: block; color: var(--wow-muted); font-size: var(--wow-text-body); margin-bottom: 5px; }
.contact-channel a { font-size: var(--wow-text-lead); text-decoration: none; font-weight: 600; overflow-wrap: anywhere; }
.prose { max-width: 850px; }
.prose h2 { font-size: var(--wow-title-section); margin-top: 32px; letter-spacing: -.7px; }
.prose p, .prose li { color: var(--wow-muted); font-size: var(--wow-text-body); }
.values { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 30px; }
.value { border-top: 2px solid var(--gold); padding-top: 22px; }
.value p { font-size: var(--wow-text-body); color: var(--wow-muted); }
.founder { padding: 30px; background: var(--soft); border-radius: var(--radius); }
.founder h3 { margin-bottom: 7px; }
.founder .role { color: var(--wow-gold-text); font-size: var(--wow-text-body); }
.founder p { font-size: var(--wow-text-body); color: var(--wow-muted); }
.coming { display: flex; gap: 15px; align-items: flex-start; background: var(--cream); padding: 20px 24px; border-radius: 8px; color: var(--wow-gold-text); margin-top: 25px; font-size: var(--wow-text-body); }
.error-page { min-height: 55vh; display: grid; place-items: center; text-align: center; }
@media(max-width:1100px) {
  .container { width: min(1240px,calc(100% - 52px)); }
  .main-nav { gap: 18px; }
  .brand { width: min(var(--logo-header-width, 320px), 280px); }
  .hero-grid { gap: 40px; }
  .hero-photo { height: 500px; }
  .hero h1 { font-size: var(--wow-title-page); }
  .split { gap: 45px; }
}
@media(max-width:1200px) {
  .header-inner { min-height: 80px; flex-wrap: wrap; padding-block: 14px; }
  .nav-toggle { display: block; }
  .main-nav { width: 100%; flex-basis: 100%; display: flex; flex-wrap: wrap; gap: 0; padding-top: 12px; }
  .main-nav > a { width: 50%; padding: 12px 5px; white-space: normal; }
  .main-nav .nav-cta { width: auto; margin: 8px 0; }
  .js .main-nav { display: none; }
  .js .main-nav.open { display: flex; }
}
@media(max-width:900px) {
  .hero { padding: 45px 0; }
  .hero-grid { gap: 30px; }
  .hero h1 { font-size: var(--wow-title-page); letter-spacing: -2px; }
  .hero-photo { height: 430px; border-radius: 45px 12px 45px 12px; }
  .photo-caption { left: -14px; bottom: 24px; padding: 16px; }
  .lead { font-size: var(--wow-text-lead); }
  .services-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .talent-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .team-grid { grid-template-columns: minmax(0,1fr); }
  .talent-section-head { grid-template-columns: minmax(0,1fr); gap: 16px; }
  .section { padding: 65px 0; }
  .section-head { align-items: flex-start; flex-direction: column; gap: 18px; }
  .section-head p { max-width: 650px; }
  .split { gap: 35px; }
  .split-photo { height: 430px; }
  .intro-strip { gap: 35px; }
  .job-detail-grid { gap: 35px; grid-template-columns: minmax(0,1.4fr) minmax(0,1fr); }
  .contact-layout { gap: 30px; }
  .footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px; }
  .cta-inner { align-items: flex-start; flex-direction: column; gap: 25px; }
}
@media(max-width:650px) {
  .container { width: calc(100% - 36px); }
  .brand { width: var(--logo-mobile-width, 240px); }
  .hero { padding: 25px 0 35px; }
  .hero-grid, .split, .intro-strip, .job-detail-grid, .contact-layout { grid-template-columns: minmax(0,1fr); gap: 32px; }
  .hero-copy { padding-top: 16px; padding-bottom: 5px; }
  .hero h1 { font-size: var(--wow-title-page); letter-spacing: -2px; }
  .hero-photo { height: 410px; border-radius: 38px 10px 38px 10px; object-position: center 42%; }
  .photo-caption { left: 0; bottom: 24px; max-width: calc(100% - 20px); }
  .eyebrow { letter-spacing: 1.2px; }
  .sector-band { padding: 22px 0; }
  .sectors { gap: 12px 20px; justify-content: flex-start; }
  .sectors .sector-label { max-width: none; width: 100%; }
  .sectors strong { font-size: var(--wow-text-lead); }
  .section { padding: 50px 0; }
  .services-grid, .choices-grid, .info-grid, .values { grid-template-columns: minmax(0,1fr); gap: 16px; }
  .talent-grid { grid-template-columns: minmax(0,1fr); gap: 18px; }
  .talent-card, .talent-card-compact { padding: 25px; }
  .team-card { padding: 25px; }
  .service-card { min-height: 240px; padding: 26px; }
  .split-photo { height: 350px; }
  .blue-section .split-photo { height: 350px; }
  .job-card { grid-template-columns: minmax(0,1fr); padding: 25px; gap: 10px; }
  .job-side { text-align: left; }
  .job-card h3 { font-size: var(--wow-text-card); }
  .job-meta { gap: 8px 15px; }
  .job-meta span+span::before { margin-right: 15px; }
  .page-hero { padding: 35px 0 42px; }
  .page-hero h1 { font-size: var(--wow-title-page); letter-spacing: -1.7px; }
  .page-hero-photo { height: 350px; }
  .filters { grid-template-columns: minmax(0,1fr); gap: 14px; }
  .filter-status { margin-top: 15px; }
  .form-grid { grid-template-columns: minmax(0,1fr); gap: 17px; }
  .full { grid-column: auto; }
  .choice { padding: 27px; }
  .footer-grid { grid-template-columns: minmax(0,1fr); gap: 25px; }
  .footer-grid a { padding-block: 4px; }
  .footer-grid h3 { margin-bottom: 12px; }
  .footer-about { max-width: 400px; }
  .cta-inner h2 { font-size: var(--wow-title-section); }
  input, select, textarea { font-size: var(--wow-text-subtitle); }
}
@media(prefers-reduced-motion:reduce) {
  :root { scroll-behavior: auto; }
  *, *::before, *::after { transition: none !important; animation: none !important; }
}

.delivery-section { scroll-margin-top: 125px; }
.delivery-header { display: grid; grid-template-columns: 1fr 1.05fr; gap: 64px; align-items: end; margin-bottom: 32px; }
.delivery-header h2 { max-width: 480px; margin-bottom: 0; }
.delivery-header > p { color: var(--wow-muted); margin-bottom: 0; font-size: var(--wow-text-subtitle); }
.delivery-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.delivery-card { min-width: 0; border: 1px solid #e4dece; border-radius: var(--radius); background: white; padding: 30px; }
.delivery-number { display: block; color: var(--wow-gold-text); font-family: var(--wow-font); font-size: var(--wow-text-heading); line-height: 1.2; }
.delivery-card .delivery-number { margin-bottom: 26px; }
.delivery-card h3 { font-size: var(--wow-text-card); }
.delivery-card p { color: var(--wow-muted); margin-bottom: 0; font-size: var(--wow-text-lead); }
.delivery-close { display: flex; justify-content: space-between; align-items: center; gap: 26px; margin-top: 28px; }
.delivery-close p { color: var(--wow-muted); font-size: var(--wow-text-body); max-width: 580px; margin-bottom: 0; }
.delivery-close .button { flex-shrink: 0; }
.sample-disclaimer { display: inline-block; margin: 0 0 20px; border-left: 3px solid var(--gold); padding: 8px 14px; color: var(--wow-navy); background: #f0e7d2; font-size: var(--wow-text-body); font-weight: 600; }
.delivery-example, .delivery-example:last-child { margin-bottom: 16px; border: 1px solid #e0daca; border-radius: var(--radius); background: white; overflow: hidden; scroll-margin-top: 125px; }
.delivery-example:last-child { margin-bottom: 0; }
.delivery-example summary { display: grid; grid-template-columns: 40px minmax(0,1fr) 22px; align-items: center; gap: 22px; padding: 25px 30px; }
.delivery-example summary:hover { background: #fcfaf5; }
.delivery-example summary:focus-visible { outline-offset: -5px; }
.delivery-example summary::after { font-size: 26px; text-align: right; }
.delivery-summary-copy { min-width: 0; }
.delivery-summary-copy strong { display: block; font-size: var(--wow-text-card); font-weight: 600; line-height: 1.3; margin-bottom: 8px; }
.delivery-summary-copy > span { display: block; color: var(--wow-muted); font-size: var(--wow-text-lead); font-weight: 400; line-height: 1.65; }
.delivery-sample { border-top: 1px solid var(--line); padding: 28px 30px 30px; }
.delivery-sample p { max-width: none; padding-right: 0; }
.delivery-sample .sample-kicker { color: var(--wow-gold-text); font-size: var(--wow-text-body); font-weight: 600; margin: 0 0 12px; }
.sample-heading { margin-bottom: 28px; }
.sample-heading h3 { margin-bottom: 12px; font-size: var(--wow-text-card); }
.sample-heading > p:last-child { color: var(--wow-muted); font-size: var(--wow-text-lead); margin-bottom: 0; }
.sample-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px 32px; margin: 0; }
.sample-fields > div { min-width: 0; border-top: 1px solid var(--line); padding-top: 16px; }
.sample-fields .field-wide { grid-column: 1/-1; }
.delivery-sample dt { color: var(--wow-muted); font-size: var(--wow-text-body); margin-bottom: 6px; }
.delivery-sample dd { color: var(--wow-ink); font-size: var(--wow-text-lead); margin-left: 0; }
.candidate-comparison { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.candidate-card { min-width: 0; padding: 24px; border: 1px solid var(--line); border-radius: 9px; }
.candidate-card h4, .followup-card h4 { color: var(--wow-navy); font-size: var(--wow-text-subtitle); font-weight: 600; line-height: 1.4; margin: 0 0 22px; }
.candidate-card h4 { padding-bottom: 16px; border-bottom: 2px solid var(--gold); }
.candidate-card dl, .followup-card dl { display: grid; gap: 18px; margin: 0; }
.delivery-sample .sample-footnote { color: var(--wow-muted); font-size: var(--wow-text-body); margin: 22px 0 0; }
.followup-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; }
.followup-card { min-width: 0; padding: 25px; background: var(--soft); border: 1px solid var(--line); border-radius: 9px; }
@media(max-width:900px) {
  .delivery-header { grid-template-columns: minmax(0,1fr); gap: 18px; }
  .delivery-header h2 { max-width: none; }
  .delivery-grid, .candidate-comparison { grid-template-columns: minmax(0,1fr); }
  .delivery-card .delivery-number { margin-bottom: 18px; }
  .delivery-close { align-items: flex-start; flex-direction: column; gap: 20px; }
}
@media(max-width:650px) {
  .delivery-section, .delivery-example { scroll-margin-top: 110px; }
  .delivery-card { padding: 25px; }
  .delivery-header > p { font-size: var(--wow-text-lead); }
  .delivery-example summary { grid-template-columns: 30px minmax(0,1fr) 18px; gap: 12px; padding: 22px 18px; }
  .delivery-summary-copy strong { font-size: var(--wow-text-card); }
  .delivery-summary-copy > span { font-size: var(--wow-text-body); }
  .delivery-number { font-size: var(--wow-text-heading); }
  .delivery-sample { padding: 24px 20px; }
  .sample-heading h3 { font-size: var(--wow-text-card); }
  .sample-fields, .followup-grid { grid-template-columns: minmax(0,1fr); gap: 20px; }
  .sample-fields .field-wide { grid-column: auto; }
  .candidate-card, .followup-card { padding: 22px; }
  .delivery-close .button { width: 100%; }
}

.delivery-service-link { margin: 24px 0 0; }

.catalog-callout { display: flex; align-items: center; justify-content: space-between; gap: 32px; margin-top: 32px; padding: 28px 30px; border: 1px solid var(--line); border-left: 3px solid var(--gold); border-radius: var(--radius); background: white; }
.catalog-callout .eyebrow { margin-bottom: 10px; }
.catalog-callout h3 { font-size: var(--wow-text-card); margin-bottom: 12px; }
.catalog-callout p:last-child { color: var(--wow-muted); font-size: var(--wow-text-lead); margin-bottom: 0; max-width: 710px; }
.catalog-callout .button { flex-shrink: 0; }
.catalog-section, .catalog-filters { scroll-margin-top: 125px; }
.catalog-intro { max-width: 940px; color: var(--wow-muted); font-size: var(--wow-text-subtitle); margin-bottom: 28px; }
.catalog-intro p:last-child { font-size: var(--wow-text-body); margin-bottom: 0; }
.catalog-intro a { color: var(--wow-navy); }
.candidate-code-note { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 25px 28px; margin-bottom: 34px; background: var(--cream); border: 1px solid #e7dfcc; border-radius: var(--radius); }
.candidate-code-note h2 { font-size: var(--wow-title-section); letter-spacing: -.6px; margin-bottom: 10px; }
.candidate-code-note p { font-size: var(--wow-text-body); color: var(--wow-muted); margin-bottom: 0; max-width: 720px; }
.candidate-code-note .button { flex-shrink: 0; }
.catalog-filters { display: grid; grid-template-columns: 1fr 1.35fr 1.2fr auto; gap: 18px; align-items: end; padding: 26px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--soft); margin-bottom: 20px; }
.catalog-search { grid-column: 1/-1; }
.catalog-reset .button { white-space: nowrap; width: 100%; }
.catalog-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.catalog-card { min-width: 0; display: flex; flex-direction: column; padding: 28px; border: 1px solid var(--line); border-radius: var(--radius); background: white; }
.catalog-card-meta { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; margin-bottom: 22px; color: var(--wow-muted); font-size: var(--wow-text-body); }
.catalog-level { display: inline-block; padding: 5px 10px; color: var(--wow-navy); background: #eef2f7; border-radius: 4px; font-size: var(--wow-text-body); line-height: 1.55; }
.catalog-card h3 { font-size: var(--wow-text-card); line-height: 1.4; margin-bottom: 12px; }
.catalog-specialty { color: var(--wow-gold-text); font-size: var(--wow-text-body); font-weight: 600; margin-bottom: 14px; }
.catalog-description { font-size: var(--wow-text-lead); color: var(--wow-muted); margin-bottom: 20px; }
.catalog-modes { margin-top: auto; margin-bottom: 18px; color: var(--wow-muted); font-size: var(--wow-text-body); }
.catalog-card-actions { display: flex; flex-direction: column; gap: 10px; }
.catalog-card-actions .button { width: 100%; padding-inline: 16px; }
.catalog-card-actions .text-link { justify-content: center; text-align: center; font-size: var(--wow-text-body); line-height: 1.5; }
.catalog-pager { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 24px; margin-top: 34px; }
.catalog-pager span { color: var(--wow-muted); font-size: var(--wow-text-lead); }
.catalog-pager .button:disabled { opacity: .45; cursor: default; transform: none; }
.code-first-layout { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.5fr); gap: 28px; align-items: start; }
.registration-step { min-width: 0; padding: 32px; border: 1px solid var(--line); border-top: 3px solid var(--gold); border-radius: var(--radius); background: var(--cream); }
.registration-step-form { background: white; }
.registration-number { display: block; font-family: var(--wow-font); font-size: var(--wow-text-section); color: var(--wow-gold-text); margin-bottom: 22px; }
.registration-step h2 { font-size: var(--wow-title-section); letter-spacing: -.8px; }
.registration-step > p { color: var(--wow-muted); font-size: var(--wow-text-lead); }
.registration-step .registration-note { font-size: var(--wow-text-body); margin: 24px 0 0; }
.registration-step .registration-note + .text-link { margin-top: 7px; }
.registration-hero { padding-bottom: 42px; }
.registration-hero .registration-intro { margin: 20px 0 18px; max-width: 780px; color: var(--wow-ink); }
.registration-shortcuts { display: flex; flex-wrap: wrap; gap: 12px; }
.registration-section { padding-top: 42px; }
.registration-step { scroll-margin-top: 150px; }
.registration-step .registration-label { color: var(--wow-gold-text); font-weight: 700; font-size: var(--wow-text-lead); line-height: 1.5; margin: 0 0 18px; }
.registration-step .registration-result { padding: 16px; background: var(--soft); border-radius: 6px; color: var(--wow-ink); }
.registration-step .registration-events-note { border-left: 3px solid var(--gold); padding-left: 16px; font-size: var(--wow-text-body); }
.registration-note .text-link { display: inline; font-size: inherit; }
.registration-next { display: flex; align-items: center; gap: 30px; margin-top: 32px; padding-top: 30px; border-top: 1px solid var(--line); }
.registration-next > div { flex: 1; }
.registration-next h2 { font-size: var(--wow-title-section); letter-spacing: -.5px; }
.registration-next p { margin-bottom: 0; max-width: 760px; color: var(--wow-muted); }
.registration-next .button { flex-shrink: 0; }
.candidate-hero { padding-block: 42px; }
.candidate-start { max-width: 850px; margin-top: 20px; }
.candidate-start > p { color: var(--wow-ink); margin-bottom: 20px; }
.candidate-start-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 24px; }
.candidate-first-job { display: flex; align-items: center; gap: 28px; margin-top: 28px; padding: 26px 30px; background: var(--cream); border-radius: var(--radius); scroll-margin-top: 140px; }
.candidate-first-job > div { flex: 1; min-width: 0; }
.candidate-first-job h2 { font-size: var(--wow-title-section); letter-spacing: -.5px; margin-bottom: 12px; }
.candidate-first-job p { color: var(--wow-muted); margin: 0; }
.candidate-first-job .button { flex-shrink: 0; }
.registration-shortcuts > .text-link { align-self: center; }
.registration-step > .registration-form-context { font-size: var(--wow-text-body); margin: 16px 0 0; }
.registration-help { margin-top: 26px; padding-top: 24px; border-top: 1px solid var(--line); scroll-margin-top: 140px; }
.registration-help h3 { font-size: var(--wow-text-card); letter-spacing: -.4px; margin: 0 0 12px; }
.registration-help p { font-size: var(--wow-text-body); color: var(--wow-muted); margin: 12px 0; }
.registration-help .text-link { display: inline; font-size: var(--wow-text-body); line-height: 1.6; }
.registration-code-help .text-link, .catalog-candidate-help .text-link { display: inline; font-size: inherit; }
.catalog-candidate-help { margin: 28px 0 0; color: var(--wow-muted); font-size: var(--wow-text-lead); }
.catalog-first-job { margin: 20px 0 0; }
@media(max-width:650px) {
  .candidate-first-job { flex-direction: column; align-items: stretch; padding: 24px; scroll-margin-top: 110px; }
  .candidate-first-job .button { width: 100%; }
  .registration-help { scroll-margin-top: 110px; }
}
.candidate-options { padding-top: 42px; }
.candidate-choices .choice > p:not(.eyebrow) { color: var(--wow-muted); }
.candidate-choices .choice > p:last-of-type { margin-bottom: 26px; }
[data-catalog-audience="candidates"] .catalog-intro p:last-child { margin-bottom: 22px; }
@media(max-width:650px) {
  .registration-shortcuts { flex-direction: column; }
  .registration-shortcuts .button { width: 100%; }
  .registration-step { scroll-margin-top: 110px; }
  .registration-next { align-items: stretch; flex-direction: column; gap: 20px; }
  .candidate-hero { padding-block: 30px; }
  .candidate-start-actions { align-items: stretch; flex-direction: column; }
  .candidate-start-actions .button { width: 100%; }
  .candidate-start-actions .text-link { text-align: center; justify-content: center; }
}
#specialty-code { text-transform: uppercase; font-family: "Consolas", "Courier New", monospace; letter-spacing: .035em; }
#specialty-code-help { margin-top: 8px; margin-bottom: 0; }
#specialty-form .form-note { margin-bottom: 0; }
#specialty-form .notice { margin-bottom: 0; }
@media(max-width:1100px) {
  .catalog-filters { grid-template-columns: 1fr 1.4fr 1.3fr; }
  .catalog-reset { grid-column: 1/-1; }
  .catalog-reset .button { width: auto; }
  .catalog-card { padding: 24px; }
}
@media(max-width:900px) {
  .catalog-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .catalog-callout, .candidate-code-note { align-items: flex-start; flex-direction: column; gap: 22px; }
  .code-first-layout { grid-template-columns: minmax(0,1fr); }
}
@media(max-width:650px) {
  .catalog-section, .catalog-filters { scroll-margin-top: 110px; }
  .catalog-callout, .candidate-code-note { padding: 24px; }
  .catalog-callout .button, .candidate-code-note .button { width: 100%; }
  .catalog-filters { grid-template-columns: minmax(0,1fr); padding: 22px; gap: 16px; }
  .catalog-search, .catalog-reset { grid-column: auto; }
  .catalog-reset .button { width: 100%; }
  .catalog-grid { grid-template-columns: minmax(0,1fr); }
  .catalog-card { padding: 25px; }
  .catalog-pager { gap: 14px; }
  .catalog-pager .button { padding-inline: 18px; }
  .registration-step { padding: 26px; }
  .registration-step h2 { font-size: var(--wow-title-section); }
  .registration-step > .button { width: 100%; }
}

.audience-choices { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.audience-choice { min-width: 0; display: flex; flex-direction: column; gap: 10px; padding: 21px 20px; border: 1px solid var(--line); border-radius: 10px; text-decoration: none; line-height: 1.45; transition: border-color .15s; }
.audience-choice:hover { border-color: var(--gold-dark); }
.audience-choice-label { font-size: var(--wow-text-body); font-weight: 700; letter-spacing: 1px; text-transform: uppercase; }
.audience-choice strong { font-size: var(--wow-text-subtitle); font-weight: 600; }
.audience-choice strong span { white-space: nowrap; }
.audience-choice > span:last-child { font-size: var(--wow-text-body); }
.audience-choice-employer { background: var(--navy); color: white; border-color: var(--navy); }
.audience-choice-employer .audience-choice-label { color: var(--wow-gold-light); }
.audience-choice-candidate { background: var(--cream); color: var(--wow-navy); border-color: #e7dfcc; }
.audience-choice-candidate .audience-choice-label { color: var(--wow-gold-text); }
/* One secondary navigation style for companies and candidates. */
.audience-bar { border-bottom:1px solid var(--line);background:white;color:var(--wow-navy); }
.audience-bar-inner { padding-block:10px; }
.audience-menu { display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px; }
.audience-link { display:inline-flex;align-items:center;min-height:44px;padding:8px 0;border-bottom:2px solid transparent;color:var(--wow-navy);font-size:var(--wow-text-body);font-weight:500;line-height:1.5;text-decoration:none; }
.audience-link:hover { color:var(--wow-gold-text); }
.audience-link[aria-current="page"] { color:var(--wow-gold-text);border-bottom-color:var(--gold-dark);font-weight:600; }
.audience-link:focus-visible { outline-offset:3px; }
.candidate-choices { grid-template-columns: repeat(3,minmax(0,1fr)); }
.candidate-choices .choice { display: flex; flex-direction: column; min-width: 0; }
.candidate-choices .choice .button { align-self: flex-start; margin-top: auto; }
#enterprise-frame { display: block; width: 100%; min-height: 400px; height: 1520px; border: 0; background: white; }
#request-online > .form-note { margin-top: 18px; }
@media(max-width:650px) { #enterprise-frame { height: 2040px; } }
@media(min-width:1051px) and (max-width:1200px) {
  .brand { width: min(var(--logo-header-width, 320px), 300px); }
}
@media(max-width:900px) {
  .audience-choices { grid-template-columns: minmax(0,1fr); }
  .audience-choice { padding: 18px 20px; gap: 6px; }
  .candidate-choices { grid-template-columns: minmax(0,1fr); }
}
@media(max-width:650px) {
  .audience-bar-inner { padding-block:10px; }
  .audience-menu { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 16px; }
  .audience-link { justify-self:start;max-width:100%;padding:8px 0;text-align:left; }
  .audience-choices { gap: 12px; }
  .candidate-choices .choice .button { width: 100%; }
}

/* Specialty selection | one aligned row per option on every screen. */
.profile-picker-trigger { display: grid; grid-template-columns: minmax(0,1fr) 20px; align-items: center; gap: 14px; width: 100%; min-height: 54px; padding: 14px 16px; border: 1px solid #b7c1cc; border-radius: 6px; background: white; color: var(--wow-navy); font-size: var(--wow-text-subtitle); line-height: 1.45; text-align: left; cursor: pointer; }
.picker-trigger-copy { min-width: 0; }
#specialty-profile-value { display: block; white-space: normal; overflow-wrap: anywhere; }
.picker-trigger-area { display: block; margin-top: 5px; color: var(--wow-muted); font-size: var(--wow-text-body); font-weight: 400; }
.profile-picker-trigger:hover { border-color: var(--navy); }
.profile-picker-trigger.has-selection { border-color: var(--navy); }
.profile-picker-trigger[aria-invalid="true"] { border-color: #a32f24; }
.picker-field-help { margin: 9px 0 0; }
.picker-field-error { margin: 9px 0 0; color: #a32f24; font-size: var(--wow-text-body); }
html.has-profile-picker, html.has-profile-picker body { overflow: hidden; }
.profile-picker-dialog { position: fixed; inset: 0; width: min(640px,calc(100vw - 40px)); height: min(780px,86dvh); max-width: none; max-height: calc(100dvh - 40px); margin: auto; padding: 0; border: 1px solid #d7dce3; border-top: 4px solid var(--gold); border-radius: 14px; background: white; color: var(--wow-ink); box-shadow: 0 24px 80px rgba(9,35,72,.24); }
.profile-picker-dialog[open] { display: flex; flex-direction: column; }
.profile-picker-dialog::backdrop { background: rgba(6,21,43,.58); backdrop-filter: blur(2px); }
.profile-picker-dialog p { margin: 0; }
.picker-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; flex: 0 0 auto; padding: 23px 24px 14px; }
.picker-header .picker-eyebrow { margin-bottom: 7px; color: var(--wow-gold-text); font-size: var(--wow-text-body); font-weight: 700; letter-spacing: 1px; text-transform: uppercase; }
.picker-header h2 { margin: 0; color: var(--wow-navy); font-size: var(--wow-title-section); font-weight: 600; line-height: 1.3; letter-spacing: -.6px; }
.picker-header h2:focus { outline: none; }
.picker-close { display: grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px; padding: 0; border: 1px solid var(--line); border-radius: 7px; background: white; color: var(--wow-navy); cursor: pointer; }
.picker-tools { flex: 0 0 auto; padding: 0 24px; }
.picker-tools #specialty-picker-intro { margin-bottom: 16px; color: var(--wow-muted); font-size: var(--wow-text-body); line-height: 1.55; }
.picker-tools label { display: block; margin-bottom: 7px; font-size: var(--wow-text-control); font-weight: 600; }
.picker-search-wrap { position: relative; }
.picker-search-wrap > svg { position: absolute; top: 15px; left: 14px; color: var(--wow-muted); pointer-events: none; }
.picker-search-wrap input { width: 100%; height: 54px; min-height: 54px; margin: 0; padding: 12px 14px 12px 43px; border: 1px solid #b7c1cc; border-radius: 6px; color: var(--wow-navy); background: white; font-size: var(--wow-text-subtitle); line-height: 1.5; }
.picker-search-wrap input::placeholder { color: var(--wow-muted); font-size: var(--wow-text-control); }
.picker-areas { margin: 12px 0 0; border: 1px solid var(--line); border-radius: 6px; background: white; overflow: hidden; }
.picker-areas summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 58px; padding: 10px 14px; color: var(--wow-muted); font-size: var(--wow-text-body); line-height: 1.4; }
.picker-areas summary::after, .picker-areas[open] summary::after { content: none; }
.picker-areas summary > span { min-width: 0; }
.picker-areas summary strong { display: block; color: var(--wow-navy); font-size: var(--wow-text-lead); font-weight: 600; line-height: 1.4; overflow-wrap: anywhere; }
.picker-areas summary > svg { flex: 0 0 18px; transition: transform .15s; }
.picker-areas[open] summary > svg { transform: rotate(180deg); }
.picker-area-options { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; max-height: 200px; padding: 12px; overflow-y: auto; overscroll-behavior: contain; border-top: 1px solid var(--line); background: #f6f8fb; }
.picker-area-option { min-width: 0; min-height: 46px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 5px; background: white; color: var(--wow-navy); font-size: var(--wow-text-body); line-height: 1.4; text-align: left; overflow-wrap: anywhere; cursor: pointer; }
.picker-area-option[aria-pressed="true"] { border-color: var(--navy); background: var(--navy); color: white; }
.picker-results-meta { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 43px; padding: 10px 0; }
.picker-results-meta .picker-count { color: var(--wow-muted); font-size: var(--wow-text-body); line-height: 1.4; }
.picker-reset { min-height: 44px; padding: 4px 0; border: 0; background: transparent; color: var(--wow-navy); font-size: var(--wow-text-body); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.picker-results { min-height: 80px; flex: 1 1 auto; padding: 0 24px 20px; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; border-top: 1px solid var(--line); background: #f7f9fb; }
.picker-group { margin: 0; padding: 0; border: 0; }
.picker-group h3 { margin: 0; padding: 17px 0 10px; color: var(--wow-gold-text); font-size: var(--wow-text-card); font-weight: 600; line-height: 1.4; }
.picker-option { display: grid; grid-template-columns: minmax(0,1fr) 22px; align-items: center; gap: 14px; width: 100%; min-height: 60px; margin-bottom: 8px; padding: 15px; border: 1px solid #e1e6ed; border-radius: 7px; background: white; color: var(--wow-navy); font-size: var(--wow-text-subtitle); font-weight: 500; line-height: 1.45; text-align: left; cursor: pointer; }
.picker-option-title { min-width: 0; white-space: normal; overflow-wrap: anywhere; }
.picker-option-check { display: grid; place-items: center; width: 22px; height: 22px; border: 1.5px solid #bcc6d2; border-radius: 50%; color: transparent; }
.picker-option-check svg { display: block; }
.picker-option:hover { border-color: #9aaac0; background: #f2f5f9; }
.picker-option[aria-pressed="true"] { border-color: var(--navy); background: #eef2f8; }
.picker-option[aria-pressed="true"] .picker-option-check { border-color: var(--navy); background: var(--navy); color: white; }
.picker-option:focus-visible, .picker-area-option:focus-visible { outline: 2px solid var(--gold-dark); outline-offset: -3px; }
.picker-empty { padding: 28px 0; }
.picker-empty > p:first-child { margin-bottom: 10px; color: var(--wow-navy); font-size: var(--wow-text-lead); font-weight: 600; }
.picker-empty > p:nth-child(2) { color: var(--wow-muted); font-size: var(--wow-text-body); }
.picker-empty-reset { min-height: 44px; margin-top: 18px; padding: 10px 14px; border: 1px solid var(--navy); border-radius: 6px; background: white; color: var(--wow-navy); font-size: var(--wow-text-body); font-weight: 600; cursor: pointer; }
.picker-footer { flex: 0 0 auto; padding: 13px 24px 16px; border-top: 1px solid var(--line); background: white; }
.picker-footer p { color: var(--wow-muted); font-size: var(--wow-text-body); line-height: 1.5; }
.picker-back { min-height: 44px; width: 100%; margin-top: 10px; padding: 10px 16px; border: 1px solid var(--line); border-radius: 6px; color: var(--wow-navy); background: white; font-size: var(--wow-text-body); font-weight: 600; cursor: pointer; }
@media (max-width: 640px) {
  .profile-picker-dialog { inset: auto 0 0; width: 100%; height: 88dvh; max-height: calc(100dvh - 12px); margin: 0 auto; border-right: 0; border-bottom: 0; border-left: 0; border-radius: 16px 16px 0 0; }
  .picker-header { padding: 19px 18px 12px; }
  .picker-header h2 { font-size: var(--wow-title-section); }
  .picker-tools { padding: 0 18px; }
  .picker-tools #specialty-picker-intro { font-size: var(--wow-text-body); margin-bottom: 12px; }
  .picker-results { padding: 0 18px 16px; }
  .picker-option { gap: 12px; padding: 14px; }
  .picker-footer { padding: 12px 18px max(14px,env(safe-area-inset-bottom)); }
}
@media (max-height: 580px) {
  .profile-picker-dialog { height: calc(100dvh - 8px); max-height: calc(100dvh - 8px); }
  .picker-header { padding-top: 10px; padding-bottom: 8px; }
  .picker-header .picker-eyebrow, .picker-tools #specialty-picker-intro, .picker-footer p { display: none; }
  .picker-footer { padding-top: 8px; padding-bottom: 8px; }
  .picker-back { margin-top: 0; }
  .picker-tools label { margin-bottom: 4px; }
  .picker-area-options { max-height: 100px; }
  .picker-results { min-height: 0; }
}
@media (max-height: 480px) {
  .picker-footer { display: none; }
  .picker-areas summary { min-height: 48px; }
  .picker-tools { flex: 0 1 auto; min-height: 0; overflow-y: auto; }
  .picker-results { flex: 1 0 64px; }
}
@media (prefers-reduced-motion: reduce) { .picker-areas summary > svg { transition: none; } }

/* Publicacion de vacantes */
.service-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px; }
.service-grid .service-card { min-height:0; }
.service-copy { display:flex;flex-direction:column;align-items:flex-start;height:100%; }
.service-copy .button { margin-top:auto; }
.publication-invite { display:flex;align-items:center;justify-content:space-between;gap:28px;padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:var(--cream);margin-bottom:32px; }
.publication-invite h3 { font-size:var(--wow-text-card);margin-bottom:12px; }
.publication-invite p { max-width:65ch;margin:0; }
.publication-invite .button { flex-shrink:0; }
@media(max-width:700px){.service-grid{grid-template-columns:1fr}.publication-invite{flex-direction:column;align-items:flex-start;padding:24px}.publication-invite h3{font-size:var(--wow-text-card)}.employer-services{padding-top:36px}}

/* Recorrido de solicitud empresarial */
.company-contact-hero{padding-block:36px 40px}.company-contact-hero h1{font-size:var(--wow-title-page)}.company-contact-section{padding-top:40px;scroll-margin-top:115px}.enterprise-frame-wrap{position:relative}.enterprise-loading{position:absolute;inset:0 0 auto;z-index:1;margin:0;background:var(--soft)}.enterprise-frame-actions{display:flex;align-items:center;gap:14px 20px;flex-wrap:wrap;margin-top:18px}.enterprise-fallback{margin-top:0}.enterprise-fallback p{margin:0}.request-next-steps{padding-left:22px;margin:0 0 24px;color:var(--wow-muted);font-size:var(--wow-text-lead)}.request-next-steps li{padding-left:5px;margin-bottom:16px}.request-next-steps strong{display:block;color:var(--wow-ink)}.request-urgent{margin-top:24px}.contact-channel>p{margin:8px 0 0;font-size:var(--wow-text-body)}.empty-state .actions{justify-content:center;flex-wrap:wrap}.empty-state .text-link{align-self:center}.catalog-card-actions .button{white-space:normal;text-align:center;min-height:48px}@media(max-width:650px){.company-contact-hero{padding-block:26px 30px}.company-contact-hero h1{font-size:var(--wow-title-page)}.company-contact-section{padding-top:28px}.enterprise-frame-actions{align-items:flex-start;flex-direction:column}.enterprise-frame-actions .button{width:100%}.empty-state .button{width:100%;white-space:normal;text-align:center}}
[data-catalog-audience="employers"] .catalog-card-actions{flex-direction:row;flex-wrap:wrap}[data-catalog-audience="employers"] .catalog-card-actions .button{width:auto;flex:1 1 132px}

/* Accesos de publicación y alcance del servicio */
.home-publication-note { font-size:var(--wow-text-body);line-height:1.6;margin:14px 0 26px;max-width:48ch; }
.hiring-options { margin-bottom:32px; }
.hiring-options .choice { display:flex;flex-direction:column;align-items:flex-start;gap:16px;min-width:0; }
.hiring-options .choice p { margin:0; }
.hiring-options .choice .button { margin-top:auto;max-width:100%;white-space:normal; }
.publication-explainer { padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--cream);margin-bottom:28px; }
.publication-explainer h2 { font-size:var(--wow-title-section);margin-bottom:16px; }
.publication-explainer p:last-child { margin-bottom:0; }

/* Service hierarchy */
.employer-services { padding-top:40px; }
.employer-services .hiring-options { margin-bottom:64px; }
.hiring-options h3 { font-size:var(--wow-text-card);line-height:1.4;margin:0; }
.other-services { margin-bottom:28px; }
.visually-hidden { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
@media(max-width:650px) { .employer-services .hiring-options { margin-bottom:44px; } }
