/* PropertyTalents Build 76 — safe global legibility refinement
   Rebuilt from stable Build 74. Build 75 is discarded.
   No section, image, JavaScript, routing, or interaction source is changed here. */

:root{
  /* Upgrade Build 73 inner-page readability variables where that stylesheet is present. */
  --pt-readable-body:15px;
  --pt-readable-card:14px;
  --pt-readable-small:12px;
  --pt-readable-control:14px;
}

/* ---------- Homepage: Services ---------- */
.services-premium__kicker{font-size:12px!important;line-height:1.3!important}
.services-premium__aside{font-size:15px!important;line-height:1.65!important}
.services-premium__aside a{font-size:14px!important;line-height:1.25!important}
.service-film__eyebrow{font-size:12px!important;line-height:1.3!important}
.service-film p{font-size:14px!important;line-height:1.58!important}
.service-film__cta{font-size:14px!important;line-height:1.25!important}

/* ---------- Homepage: bridges / sectors ---------- */
.section-bridge__kicker{font-size:12px!important;line-height:1.3!important}
.section-bridge__statement{font-size:clamp(22px,1.9vw,30px)!important}
.section-bridge__aside p{font-size:14px!important;line-height:1.6!important}
.section-bridge__aside span,.section-bridge__meta{font-size:11px!important;line-height:1.4!important}
.sector-frame__kicker,.sector-frame__count{font-size:12px!important;line-height:1.3!important}
.sector-frame__meta{font-size:14px!important;line-height:1.55!important}
.sector-frame__link{font-size:14px!important;line-height:1.25!important}
.sector-tile__num{font-size:11px!important}
.sector-tile__name{font-size:13px!important;line-height:1.35!important}
.sector-tile__arrow{font-size:13px!important}
.sectors-premium__all{font-size:14px!important}

/* ---------- Homepage: Candidates ---------- */
.candidate-visual__kicker{font-size:12px!important;line-height:1.3!important}
.candidate-visual__sub{font-size:15px!important;line-height:1.62!important;max-width:640px!important}
.candidate-visual__actions{gap:12px!important;margin-top:26px!important}
.candidate-visual__link{
  min-width:176px;
  min-height:48px;
  padding:0 17px!important;
  border:1px solid rgba(255,255,255,.50)!important;
  display:inline-flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:24px!important;
  font-size:14px!important;
  line-height:1!important;
  text-decoration:none!important;
}
.candidate-visual__link.primary{
  border-color:var(--red)!important;
  background-color:var(--red)!important;
}
.candidate-opportunities__kicker,.candidate-op-card__eyebrow{font-size:11px!important;line-height:1.3!important}
.candidate-opportunities__copy{font-size:14px!important;line-height:1.65!important}
.candidate-op-card__copy{font-size:13px!important;line-height:1.58!important}
.candidate-op-card__cta{font-size:13px!important;line-height:1.25!important}

/* ---------- Homepage: Market Intelligence ---------- */
.intel-frame__strap{font-size:14px!important;line-height:1.62!important}
.intel-edition__issue,.intel-edition__type{font-size:11px!important;line-height:1.3!important}
.intel-edition__summary{font-size:14px!important;line-height:1.62!important}
.intel-edition__meta{font-size:12px!important;line-height:1.45!important}
.intel-edition__cta{font-size:14px!important;line-height:1.25!important}
.intel-shelf__num,.intel-shelf__type{font-size:11px!important;line-height:1.3!important}
.intel-shelf__content strong{font-size:13px!important;line-height:1.42!important}
.intel-shelf__arrow{font-size:14px!important}
.intelligence-premium__all{font-size:14px!important;line-height:1.25!important}

/* ---------- Homepage: Employer / Contact ---------- */
.employer-cinematic__kicker{font-size:12px!important;line-height:1.3!important}
.employer-cinematic__sub{font-size:15px!important;line-height:1.62!important}
.employer-cinematic__note{font-size:11px!important;line-height:1.4!important}
.employer-cinematic__open{min-height:52px!important;font-size:14px!important}
.contact-modal__intro{font-size:14px!important;line-height:1.6!important}
.modal-field span{font-size:11px!important;line-height:1.3!important}
.modal-field input,.modal-field textarea{font-size:15px!important;line-height:1.45!important}
.modal-field input{min-height:44px!important}
.modal-field textarea{min-height:90px!important}
.contact-modal__submit{min-height:50px!important;font-size:14px!important}
.contact-modal__footnote{font-size:12px!important;line-height:1.5!important}
.contact-modal__visual-kicker{font-size:11px!important;line-height:1.3!important}
.contact-modal__visual-copy p{font-size:13px!important;line-height:1.5!important}

/* ---------- Inner pages: lift remaining literal micro type safely ---------- */
main .section-kicker,
main [class$="__kicker"],
main [class$="__eyebrow"],
main [class$="__label"]{font-size:12px!important;line-height:1.35!important}
main [class$="__meta"],
main [class$="__count"],
main [class$="__type"]{font-size:11px!important;line-height:1.4!important}
main [class$="__cta"],
main [class$="__action"],
main [class$="__all"],
main [class$="__link"],
main [class$="__submit"],
main [class$="__open"]{font-size:14px!important;line-height:1.25!important}

/* Forms throughout the public site. */
main label span{font-size:11px!important;line-height:1.3!important}
main input,main textarea,main select{font-size:15px!important;line-height:1.45!important}

/* Footer legibility, including homepage (Build 73 stylesheet is not loaded there). */
.site-footer .footer-brand__line,.site-footer .footer-col a,.site-footer .footer-link-disabled,.site-footer .footer-bottom,.site-footer .footer-bottom__meta{font-size:13px!important;line-height:1.5!important}
.site-footer .footer-col__title,.site-footer .footer-social__label{font-size:11px!important;line-height:1.3!important}

/* ---------- Primary red CTA reflective sweep ---------- */
.hero-btn.primary,
.candidate-visual__link.primary,
.contact-modal__submit,
.candidate-modal__submit,
.candidate-actions .primary{
  position:relative;
  overflow:hidden;
  background-color:var(--red)!important;
  background-image:linear-gradient(112deg,transparent 0%,transparent 40%,rgba(255,255,255,.05) 44%,rgba(255,255,255,.34) 50%,rgba(255,255,255,.06) 56%,transparent 60%,transparent 100%)!important;
  background-size:260% 100%!important;
  background-position:150% 0;
  animation:ptPrimarySweep76 4.6s ease-in-out infinite;
}
@keyframes ptPrimarySweep76{
  0%,16%{background-position:150% 0}
  38%{background-position:-55% 0}
  100%{background-position:-55% 0}
}

@media(max-width:980px){
  :root{--pt-readable-body:14px;--pt-readable-card:13px;--pt-readable-small:11px;--pt-readable-control:13px}
  .candidate-visual__link{min-height:48px;font-size:13px!important}
  .service-film__eyebrow,.sector-frame__kicker,.candidate-visual__kicker{font-size:11px!important}
}

@media(prefers-reduced-motion:reduce){
  .hero-btn.primary,.candidate-visual__link.primary,.contact-modal__submit,.candidate-modal__submit,.candidate-actions .primary{
    animation:none!important;background-image:none!important
  }
}
