:root {
  --pivot-red:#d71920;
  --pivot-red-dark:#b51218;
  --pivot-black:#101010;
  --pivot-rule:#e5e7eb;
  --bg:#fff;
  --bg-page:#fff;
  --primary:#101010;
  --primary-hover:#2a2a2a;
  --border:#e5e7eb;
  --shadow-sm:none;
  --shadow-md:none;
  --shadow-soft:none;
  --shadow-hero:none;
}

html,body{background:#fff}
.app-container{max-width:1440px;padding:18px clamp(18px,4vw,64px) 56px}
.top-nav-shell{position:relative;padding:13px 0;margin-bottom:0;border:0;border-bottom:1px solid #d7d7d7;border-radius:0;background:#fff;box-shadow:none;backdrop-filter:none}
.top-nav-logo{width:46px;height:46px}
.top-nav-brand-title{color:var(--pivot-black);font-size:1rem;letter-spacing:-.01em}
.top-nav-button,.top-nav-button.is-active,.top-nav-button.is-primary,.top-nav-install-btn{min-height:42px;padding:0 13px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:#303030;box-shadow:none}
.top-nav-button:hover,.top-nav-button.is-active{border-bottom-color:var(--pivot-red);background:transparent;color:var(--pivot-red)}
.top-nav-button.is-primary{color:var(--pivot-red)}
.page-shell,.app-page{gap:0}
.app-hero,.pivot-public-hero{margin:0;padding:clamp(40px,7vw,92px) clamp(20px,5vw,72px);border:0;border-radius:0;color:#fff;background:linear-gradient(125deg,#080808 0%,#171717 74%,#31080a 100%);box-shadow:none}
.app-hero .app-title-xl,.app-hero .app-title-lg,.app-hero h1,.app-hero h2{color:#fff!important;-webkit-text-fill-color:#fff!important}
.app-hero .app-text-light,.app-hero .app-text-muted{color:#d0d0d0}
.pivot-hero-aside{width:min(100%,320px);min-height:0;display:flex;align-items:center}
.pivot-hero-card-main{
  width:100%;
  padding:4px 0 4px 24px;
  border:0;
  border-left:3px solid var(--pivot-red);
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.pivot-hero-score-label{
  color:#b8b8b8;
  font-size:.75rem;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.pivot-hero-score-value{
  margin-top:8px;
  color:#fff;
  font-size:clamp(2.6rem,5vw,4.4rem);
  font-weight:800;
  letter-spacing:-.05em;
  line-height:.95;
}
.pivot-hero-score-help{
  max-width:260px;
  margin-top:12px;
  color:#c9c9c9;
  font-size:.88rem;
  line-height:1.6;
}
.app-badge,.app-badge-dark{border:0;border-radius:0;background:transparent;color:inherit}
.surface-card,.surface-panel,.app-card,.app-card-muted,.app-stat,.job-single,.career-dashboard-offer,.pivot-conversion-strip{border:0;border-radius:0;background:transparent;box-shadow:none}
.pivot-conversion-strip{
  margin-top:32px;
  padding:clamp(28px,4vw,48px);
  border:0;
  border-radius:0;
  background:#f5f6f7;
  box-shadow:none;
}
.pivot-conversion-title{color:var(--pivot-black)}
.pivot-conversion-text{color:#5f6670}
.pivot-conversion-price{margin-top:12px;color:#2f3338;font-size:.9rem}
.pivot-conversion-price strong{color:var(--pivot-red);font-size:1.08rem}
.pivot-conversion-reassurance{margin-top:3px;color:#737982;font-size:.82rem;font-style:italic}
.surface-card,.surface-panel,.app-card,.app-card-muted{padding:24px 0;border-bottom:1px solid var(--pivot-rule)}
.job-single{margin-top:0;padding:0}
.app-grid-2,.app-grid-3,.app-grid-4{gap:0}
.app-grid-2>*,.app-grid-3>*,.app-grid-4>*{padding:24px clamp(18px,2.5vw,34px);border-right:1px solid var(--pivot-rule);border-bottom:1px solid var(--pivot-rule)}
.app-grid-2>*:first-child,.app-grid-3>*:first-child,.app-grid-4>*:first-child{padding-left:0}
.app-grid-2>*:last-child,.app-grid-3>*:last-child,.app-grid-4>*:last-child{padding-right:0;border-right:0}
.app-card:hover,.app-stat:hover,.surface-card:hover,.surface-panel:hover{transform:none;box-shadow:none}
.section-title,.app-title-md,.app-title-lg,.job-card__title{color:var(--pivot-black);letter-spacing:-.02em}
.section-title:before{content:"";display:inline-block;width:28px;height:2px;margin:0 10px 4px 0;background:var(--pivot-red)}
.btn,.btn-primary,.app-btn,.dash-mini-btn.primary,.pivot-search-btn{border-color:var(--pivot-red);border-radius:7px;background:var(--pivot-red);color:#fff;box-shadow:none}
.btn:hover,.btn-primary:hover,.app-btn:hover,.dash-mini-btn.primary:hover,.pivot-search-btn:hover{border-color:var(--pivot-red-dark);background:var(--pivot-red-dark)}
.btn-secondary,.btn-ghost,.app-btn-secondary,.dash-mini-btn{border-radius:7px;box-shadow:none}
.job-grid,.job-grid.divided{display:block}
.jobs-layout{display:block}
.jobs-results{width:100%;gap:0}
.public-search-strip{
  margin:34px 0 14px;
  padding:30px clamp(20px,3vw,40px);
  border:0;
  background:#101010;
}
.public-search-strip__heading{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:20px;
  margin-bottom:20px;
}
.public-search-strip__eyebrow{
  color:var(--pivot-red);
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.public-search-strip__title{
  margin-top:4px;
  color:#fff;
  font-size:clamp(1.35rem,2.5vw,1.9rem);
  font-weight:800;
  letter-spacing:-.03em;
}
.public-search-strip__hint{color:#b8b8b8;font-size:.86rem}
.public-search-strip__grid{
  display:grid;
  grid-template-columns:minmax(240px,1.7fr) repeat(4,minmax(130px,1fr)) auto;
  gap:10px;
  align-items:end;
}
.public-search-strip__field{display:flex;flex-direction:column;gap:6px}
.public-search-strip__field span{color:#c8c8c8;font-size:.72rem;font-weight:700}
.public-search-strip__field input,.public-search-strip__field select{
  width:100%;
  min-height:46px;
  padding:0 12px;
  border:1px solid #d0d5dd;
  background:#fff;
  color:#111;
}
.public-search-strip__actions{display:flex;gap:8px;align-items:center}
.public-search-strip__actions .btn{min-height:46px;white-space:nowrap}
.public-search-strip__actions .btn-secondary{border-color:#4a4a4a;background:transparent;color:#fff}
.public-search-strip__actions .btn-secondary:hover{border-color:#767676;background:#252525}
.job-card,.job-grid.divided .job-card{margin:0;padding:26px 0;border:0;border-bottom:1px solid var(--pivot-rule);border-radius:0;background:#fff;box-shadow:none}
.job-card__top,.job-top{align-items:center;gap:20px;margin-bottom:14px}
.job-card__logo,.company-logo{
  flex:0 0 76px;
  width:76px;
  height:76px;
  border:1px solid #e1e4e8;
  border-radius:8px;
  background:#fff;
}
.job-card__logo img,.company-logo img{max-width:86%;max-height:86%;object-fit:contain}
.job-card__headings{min-width:0}
.job-card__title{font-size:1.08rem;line-height:1.3}
.job-grid .job-card:nth-child(even),
.job-grid.divided .job-card:nth-child(even){
  margin-left:calc(clamp(14px,2vw,24px) * -1);
  margin-right:calc(clamp(14px,2vw,24px) * -1);
  padding-left:clamp(14px,2vw,24px);
  padding-right:clamp(14px,2vw,24px);
  background:#f6f7f8;
}
.job-card:hover,.job-grid.divided .job-card:hover{transform:none;border-bottom-color:#c7c7c7;box-shadow:none}
.job-card.featured{padding-left:18px;border-left:3px solid var(--pivot-red);background:#fffafa}
.job-grid .job-card.featured,
.job-grid.divided .job-card.featured{background:#fffafa}
.job-card.featured:before{display:none}
.job-card__trust,.job-card__meta{border-radius:0;background:transparent}
.career-dashboard-offer{padding:clamp(34px,5vw,64px) 0;border-top:1px solid var(--pivot-rule);border-bottom:1px solid var(--pivot-rule)}
.career-dashboard-offer__card,.career-dashboard-offer__card--gradient,.career-dashboard-offer__card--inset,.pivot-step-card{padding:22px 0;border:0;border-bottom:1px solid var(--pivot-rule);border-radius:0;background:transparent;box-shadow:none}
.admin-job-card{margin:0;padding:24px 0;border:0;border-bottom:1px solid var(--pivot-rule);border-radius:0;background:transparent;box-shadow:none}
.admin-job-card__title-row,.admin-job-card__summary{border:0;border-radius:0;background:transparent}
.form-input,.form-select,.form-textarea,input,select,textarea{border-radius:7px}
.single-job-full-access{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:28px;
  padding:clamp(24px,3.5vw,40px);
  background:#f3f4f5;
}
.single-job-full-access__copy{max-width:850px}
.single-job-full-access__title{color:var(--pivot-black);font-size:clamp(1.25rem,2.4vw,1.8rem);font-weight:800;letter-spacing:-.03em;line-height:1.2}
.single-job-full-access__text{margin-top:9px;color:#555d67;line-height:1.65}
.single-job-full-access__price{margin-top:12px;color:var(--pivot-red);font-size:1.05rem;font-weight:800}
.single-job-full-access__note{margin-top:3px;color:#747b84;font-size:.82rem;font-style:italic}
.single-job-full-access__actions{flex:0 0 auto}
.single-job-full-access__actions .btn{white-space:nowrap}
.single-job-cv-support{
  margin-top:24px;
  padding:clamp(24px,3.5vw,40px);
  border:0;
  border-radius:0;
  background:#f3f4f5;
  box-shadow:none;
  flex-direction:row;
  align-items:center;
}
.single-job-cv-support .single-job-full-access__actions{width:auto;min-width:0;margin-top:0}
.single-job-cv-support .single-job-full-access__actions .btn{width:auto}
.single-job-cv-support .job-detail-support-eyebrow{color:#101010}

@media(max-width:900px){
  .app-container{padding:12px 16px 40px}
  .app-grid-2>*,.app-grid-3>*,.app-grid-4>*{padding:22px 0;border-right:0}
  .top-nav-shell{padding-left:0;padding-right:0}
  .app-hero,.pivot-public-hero{padding:40px 22px}
  .pivot-conversion-strip{margin-top:22px;padding:26px 20px}
  .public-search-strip__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .public-search-strip__field--wide{grid-column:1/-1}
  .public-search-strip__actions{grid-column:1/-1}
  .pivot-hero-aside{width:100%;margin-top:10px}
  .pivot-hero-card-main{padding:18px 0 0;border-left:0;border-top:2px solid var(--pivot-red)}
  .single-job-full-access{align-items:flex-start;flex-direction:column;gap:18px}
  .single-job-full-access__actions,.single-job-full-access__actions .btn{width:100%}
}

@media(max-width:640px){
  .public-search-strip{margin-top:22px;padding:24px 20px}
  .public-search-strip__heading{align-items:flex-start;flex-direction:column;margin-bottom:16px}
  .public-search-strip__hint{display:none}
  .public-search-strip__grid{grid-template-columns:1fr}
  .public-search-strip__field--wide,.public-search-strip__actions{grid-column:auto}
  .public-search-strip__actions{align-items:stretch;flex-direction:column}
  .public-search-strip__actions .btn{width:100%}
  .job-card,.job-grid.divided .job-card{
    padding:22px 0;
  }
  .job-grid .job-card:nth-child(even),
  .job-grid.divided .job-card:nth-child(even){
    margin-left:-16px;
    margin-right:-16px;
    padding:22px 16px;
  }
  .job-card__top,.job-top{
    display:grid;
    grid-template-columns:64px minmax(0,1fr);
    gap:14px;
    align-items:center;
    margin-bottom:14px;
  }
  .job-card__logo,.company-logo{
    width:64px;
    height:64px;
    min-width:64px;
    flex-basis:64px;
  }
  .job-card__title{font-size:1rem;line-height:1.25}
  .job-company{margin-top:4px;font-size:.84rem;line-height:1.4}
  .job-card__meta{
    display:flex;
    gap:6px;
    flex-wrap:wrap;
    margin:0 0 10px;
    padding:0;
  }
  .job-card .meta-row{margin:0!important;font-size:.78rem}
  .job-card__trust{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px 16px;
    margin-top:14px;
    padding:14px 0;
    border:0;
    border-top:1px solid var(--pivot-rule);
    border-bottom:1px solid var(--pivot-rule);
    background:transparent;
  }
  .job-card__trust-label{font-size:.64rem}
  .job-card__trust-value{font-size:.78rem;line-height:1.35}
  .job-card__summary{
    margin:14px 0 0;
    font-size:.88rem;
    line-height:1.55;
  }
  .job-card__actions{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    margin-top:16px;
  }
  .job-card__actions .btn,
  .job-card__actions .btn-primary,
  .job-card__actions .btn-secondary{
    width:100%;
    min-width:0;
    min-height:42px;
    padding:0 10px;
    font-size:.82rem;
  }
  .single-job-full-access{padding:24px 18px}
  .single-job-full-access__title{font-size:1.25rem}
  .single-job-full-access__text{font-size:.9rem}
  .single-job-cv-support{margin-top:18px;padding:24px 18px}
  .single-job-cv-support .single-job-full-access__actions,
  .single-job-cv-support .single-job-full-access__actions .btn{width:100%}
  .job-detail-header h1{
    font-size:1.35rem!important;
    line-height:1.18;
    letter-spacing:-.025em;
    overflow-wrap:anywhere;
    word-break:normal;
  }
  .mobile-public-hero .app-hero{
    padding:22px 20px 30px;
  }
  .mobile-public-hero .app-hero-row{
    display:flex;
    flex-direction:column;
    gap:24px;
  }
  .mobile-public-hero .pivot-hero-aside{
    order:-1;
    margin:0;
  }
  .mobile-public-hero .app-hero-row>div:first-child{
    order:2;
  }
  .mobile-public-hero .pivot-hero-card-main{
    display:grid;
    grid-template-columns:1fr auto;
    gap:4px 18px;
    align-items:end;
    margin:0;
    padding:0 0 16px;
    border:0;
    border-bottom:2px solid var(--pivot-red);
  }
  .mobile-public-hero .pivot-hero-score-label{
    align-self:center;
  }
  .mobile-public-hero .pivot-hero-score-value{
    grid-column:2;
    grid-row:1;
    margin:0;
    font-size:2.65rem;
    line-height:.9;
  }
  .mobile-public-hero .pivot-hero-score-help{
    grid-column:1/-1;
    max-width:none;
    margin:6px 0 0;
    font-size:.78rem;
    line-height:1.45;
  }
  .mobile-public-hero .app-title-xl{
    max-width:15ch;
    font-size:clamp(1.75rem,8vw,2.2rem);
    line-height:1.08;
    letter-spacing:-.035em;
  }
  .mobile-public-hero .app-text-light{
    margin-top:12px!important;
    font-size:.9rem;
    line-height:1.55;
  }
  .mobile-public-hero .app-text-light p{
    margin-bottom:0!important;
  }
}
/* Authentication actions */
.auth-text-button {
  align-self: center;
  border: 0;
  background: transparent;
  color: #111827;
  font: inherit;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}

.auth-account-divider {
  height: 1px;
  margin: 8px 0 2px;
  background: #e5e7eb;
}

.auth-account-prompt {
  display: grid;
  gap: 10px;
  padding-top: 6px;
}

.auth-account-prompt h2,
.auth-account-prompt p {
  margin: 0;
}

.auth-account-prompt h2 {
  color: #111827;
  font-size: 1.05rem;
}

.auth-account-prompt p,
.auth-payment-note {
  color: #64748b;
  line-height: 1.65;
}

.auth-payment-note {
  margin: 0;
  font-size: 0.86rem;
}

.auth-error.is-success {
  color: #047857;
}
