/* Reference-led pricing cards; scoped to the public payroll pricing section. */
.zpl-body .zpl-pricing.zpl-pricing-refined {
  margin: 0;
  padding: 68px 0 54px;
  background: #f1f1f2;
  color: #161616;
  text-align: center;
}
.zpl-body .zpl-pricing-refined .zpl-pricing-inner {
  width: min(1180px, calc(100% - 48px));
  margin: 0 auto;
}
.zpl-body .zpl-pricing-refined .zpl-display {
  font-size: clamp(2.25rem, 4vw, 3rem);
  line-height: 1.15;
}
.zpl-body .zpl-pricing-refined .zpl-pricing-intro {
  max-width: 620px;
  margin: 18px auto 36px;
  font-size: 1rem;
  line-height: 1.65;
  color: #656565;
}
.zpl-body .zpl-pricing-refined .zpl-plans {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
  align-items: stretch;
}
.zpl-body .zpl-pricing-refined .zpl-plan {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid #fff;
  border-radius: 30px;
  background: #fff;
  color: #161616;
  box-shadow: 0 17px 31px -19px #00000030, 0 3px 10px #00000003;
  text-align: left;
  font-family: "Inter", Arial, sans-serif;
}
.zpl-body .zpl-pricing-refined .zpl-plan-header {
  padding: 29px 24px 25px;
  border-bottom: 1px solid #eeeeef;
  background-color: #fff;
}
.zpl-body .zpl-pricing-refined .zpl-plan-glow .zpl-plan-header {
  background:
    radial-gradient(ellipse 95% 27% at 50% 0%, #8daeffab 0%, #b8caff50 48%, transparent 100%),
    radial-gradient(ellipse 105% 27% at 50% 78%, #ffd47db0 0%, #ffcb7d60 48%, transparent 100%),
    radial-gradient(ellipse 90% 19% at 40% 91%, #ffa98a6b 0%, transparent 100%),
    #fff;
}
.zpl-body .zpl-pricing-refined .zpl-plan h3 {
  margin: 0;
  color: #151515;
  font-family: "Inter", Arial, sans-serif;
  font-size: 1.3rem;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.035em;
  text-transform: none;
}
.zpl-body .zpl-pricing-refined .zpl-plan-staff {
  margin: 7px 0 20px;
  color: #656565;
  font-size: 0.875rem;
  line-height: 1.5;
}
.zpl-body .zpl-pricing-refined .zpl-plan-price {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
  margin: 0 0 25px;
  min-height: 58px;
}
.zpl-body .zpl-pricing-refined .zpl-plan-price strong {
  flex: 0 0 auto;
  color: #090909;
  font: 600 3.2rem/1.1 "Inter", Arial, sans-serif;
  letter-spacing: -0.065em;
}
.zpl-body .zpl-pricing-refined .zpl-plan-price .zpl-plan-billing {
  color: #333;
  font-size: 0.8rem;
  font-weight: 400;
  line-height: 1.6;
  white-space: nowrap;
}
.zpl-body .zpl-pricing-refined .zpl-plan-billing > span {
  display: block;
  color: #666;
  font-size: inherit;
}
.zpl-body .zpl-pricing-refined .zpl-plan-button {
  display: flex;
  width: 100%;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  padding: 12px 10px;
  border: 1px solid #1e1e1e;
  border-radius: 14px;
  background: #252525;
  color: #fff;
  box-shadow: inset 0 1px 0 #ffffff1f, 0 2px 3px #00000012;
  font-family: "Inter", Arial, sans-serif;
  font-size: 0.94rem;
  font-weight: 500;
  line-height: 1.3;
  text-transform: none;
  text-decoration: none;
  transition: background-color 150ms ease, box-shadow 150ms ease;
}
.zpl-body .zpl-pricing-refined .zpl-plan-button:hover {
  background: #080808;
  color: #fff;
  box-shadow: 0 4px 8px #0000001c;
}
.zpl-body .zpl-pricing-refined .zpl-plan-button:focus-visible {
  outline: 3px solid #2267b7;
  outline-offset: 4px;
}
.zpl-body .zpl-pricing-refined .zpl-plan-details {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 27px 24px 28px;
}
.zpl-body .zpl-pricing-refined .zpl-plan-features {
  display: grid;
  gap: 17px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.zpl-body .zpl-pricing-refined .zpl-plan-features li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  color: #252525;
  font-size: 0.875rem;
  line-height: 1.4;
}
.zpl-body .zpl-pricing-refined .zpl-plan-features i {
  flex: 0 0 17px;
  color: #161616;
  font-size: 1rem;
  line-height: 1.2;
}
.zpl-body .zpl-pricing-refined .zpl-plan-setup {
  margin: 31px 0 0;
  color: #6b6b6b;
  font-size: 0.83rem;
  line-height: 1.5;
}
.zpl-body .zpl-pricing-refined .zpl-pricing-notes {
  margin-top: 27px;
  color: #626262;
  font-size: 0.875rem;
  line-height: 1.65;
}
.zpl-body .zpl-pricing-refined .zpl-pricing-notes p { margin: 7px 0 0; }
.zpl-body .zpl-pricing-refined .zpl-pricing-notes a {
  color: #333;
  font-weight: 600;
  text-underline-offset: 3px;
}
@media (max-width: 1060px) {
  .zpl-body .zpl-pricing-refined .zpl-plans { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .zpl-body .zpl-pricing-refined .zpl-plan-header { padding: 30px 30px 26px; }
  .zpl-body .zpl-pricing-refined .zpl-plan-details { padding: 28px 30px 30px; }
  .zpl-body .zpl-pricing-refined .zpl-plan h3 { font-size: 1.4rem; }
  .zpl-body .zpl-pricing-refined .zpl-plan-price strong { font-size: 3.35rem; }
  .zpl-body .zpl-pricing-refined .zpl-plan-price .zpl-plan-billing { font-size: 0.875rem; }
  .zpl-body .zpl-pricing-refined .zpl-plan-features li { font-size: 0.94rem; }
}
@media (max-width: 639px) {
  .zpl-body .zpl-pricing.zpl-pricing-refined { padding: 46px 0 40px; }
  .zpl-body .zpl-pricing-refined .zpl-pricing-inner { width: min(420px, calc(100% - 36px)); }
  .zpl-body .zpl-pricing-refined .zpl-pricing-intro { font-size: 0.95rem; margin-bottom: 27px; }
  .zpl-body .zpl-pricing-refined .zpl-plans { grid-template-columns: 1fr; gap: 22px; }
  .zpl-body .zpl-pricing-refined .zpl-plan { border-radius: 28px; }
  .zpl-body .zpl-pricing-refined .zpl-plan-header { padding: 28px 27px 25px; }
  .zpl-body .zpl-pricing-refined .zpl-plan-details { padding: 26px 27px 28px; }
}
@media (prefers-reduced-motion: reduce) {
  .zpl-body .zpl-pricing-refined .zpl-plan-button { transition: none; }
}
