.wp { letter-spacing: 0; }
.wp h1, .wp h2, .wp h3, .wp__eyebrow, .wp__price-card dt, .wp__method-table th { letter-spacing: 0; }
.wp__hero h1 { font-size: 5.2rem; line-height: 1.25; text-wrap: balance; }
.wp__heading { font-size: 3.4rem; line-height: 1.4; }
.wp__cta h2 { font-size: 3.4rem; }
.wp__hero:after { display: none; }
.wp__toc { display: flex; flex-wrap: wrap; gap: 1.2rem 2.4rem; padding-block: 3rem; border-bottom: 1px solid var(--line); }
.wp__toc a, .wp__case a, .wp__note a, .wp__callout a { color: var(--blue); text-underline-offset: .4rem; }
.wp__toc a { font-size: 1.6rem; font-weight: 700; }
.wp__summary { padding-block: 2.4rem; border-bottom: 1px solid var(--line); color: #506a79; font-size: 1.6rem; line-height: 1.9; }
.wp__summary p + p { margin-top: .8rem; }
.wp__summary strong { color: var(--ink); }
.wp [id] { scroll-margin-top: 10rem; }
.wp__subheading { margin: 3rem 0 1.2rem; font-size: 2.2rem; line-height: 1.5; }
.wp__text + .wp__text { margin-top: 1.6rem; }
.wp__table-scroll { overflow-x: auto; margin-top: 3rem; }
.wp__table-scroll table { min-width: 60rem; }
.wp__case-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2.4rem; margin-top: 3rem; }
.wp__case { min-width: 0; border-top: 2px solid var(--line); padding-top: 1.6rem; }
.wp__case img { width: 100%; height: auto; aspect-ratio: 4/3; object-fit: contain; background: #f0f0f0; }
.wp__case h3 { margin: 1.6rem 0 1rem; font-size: 2rem; }
.wp__case p, .wp__steps p { color: #506a79; font-size: 1.6rem; line-height: 1.9; }
.wp__steps { padding-left: 2.5rem; margin-top: 3rem; font-size: 1.8rem; }
.wp__steps li { padding: 1.6rem 0 1.6rem .8rem; border-bottom: 1px solid var(--line); }
.wp__steps h3 { margin-bottom: .8rem; font-size: 2rem; }
.wp__grid-2 > *, .wp__hero-grid > *, .wp__price-card { min-width: 0; }
.wp__price-card, .wp__symptom, .wp__link-card, .wp__process-card, .wp__faq, .wp__compare { border-radius: .8rem; }
@media(max-width:960px) {
  .wp__case-grid { grid-template-columns: 1fr; }
  .wp__case img { max-height: 36rem; }
  .wp__hero h1 { font-size: 4rem; }
}
@media(max-width:640px) {
  .wp__hero h1 { font-size: 3.4rem; }
  .wp__heading, .wp__cta h2 { font-size: 2.8rem; }
  .wp__process-grid { grid-template-columns: 1fr; }
  .wp__price-card { padding: 2rem; }
  .wp__price-card dd { font-size: 2rem; }
  .wp__table-scroll .wp__method-table { display: table; }
  .wp__photo:before { inset: 1rem 0 -1rem 1rem; }
}
