.ppwr-home, .ppwr-page { --ppwr-line:#ccd9d7; --ppwr-accent:#266549; letter-spacing:0; }
.ppwr-home { border-top:1px solid var(--ppwr-line); border-bottom:1px solid var(--ppwr-line); }
.ppwr-home h2 { font-size:2rem; line-height:1.2; letter-spacing:0; max-width:850px; }
.ppwr-home h3, .ppwr-page h3 { font:700 1.125rem/1.4 var(--font-sans,var(--font-body,Arial,sans-serif)); letter-spacing:0; margin:0 0 12px; }
.ppwr-home p, .ppwr-page p, .ppwr-page li, .ppwr-page dd { font-size:1rem; line-height:1.7; overflow-wrap:break-word; }
.ppwr-home .eyebrow, .ppwr-page .eyebrow { letter-spacing:0; color:var(--ppwr-accent); }
.ppwr-columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; margin:30px 0; }
.ppwr-columns > div { min-width:0; }
.ppwr-actions { display:flex; flex-wrap:wrap; align-items:center; gap:20px; margin:24px 0; }
.ppwr-actions a { max-width:100%; white-space:normal; text-align:center; }
.ppwr-home a:not(.btn):not(.button), .ppwr-page a:not(.btn):not(.button) { text-decoration:underline; text-underline-offset:3px; }
.ppwr-page { max-width:1120px; width:calc(100% - 48px); margin:0 auto; padding:48px 0 32px; }
.ppwr-page h1 { font-size:2.75rem; line-height:1.15; letter-spacing:0; max-width:900px; margin:14px 0 22px; }
.ppwr-page h2 { font:700 1.75rem/1.3 var(--font-sans,var(--font-body,Arial,sans-serif)); letter-spacing:0; margin:0 0 20px; }
.ppwr-intro { max-width:820px; margin-bottom:36px; }
.ppwr-intro .lead { font-size:1.1875rem; line-height:1.65; }
.ppwr-jumps { display:flex; flex-wrap:wrap; gap:12px 26px; padding:20px 0; border-top:1px solid var(--ppwr-line); border-bottom:1px solid var(--ppwr-line); }
.ppwr-block { padding:36px 0; border-bottom:1px solid var(--ppwr-line); }
.ppwr-block > p { max-width:85ch; }
.ppwr-block > h3 { margin-top:24px; }
.ppwr-timeline { margin:24px 0; }
.ppwr-timeline > div { display:grid; grid-template-columns:200px minmax(0,1fr); gap:30px; border-top:1px solid var(--ppwr-line); padding:24px 0; }
.ppwr-timeline dt { color:var(--ppwr-accent); font-weight:750; font-size:1.125rem; }
.ppwr-timeline dt span { display:block; margin-top:6px; color:inherit; font-weight:500; font-size:.9375rem; }
.ppwr-timeline dd { margin:0; }
.ppwr-families { margin:24px 0; }
.ppwr-families > div { display:grid; grid-template-columns:220px minmax(0,1fr); gap:30px; padding:22px 0; border-top:1px solid var(--ppwr-line); }
.ppwr-families dt { font-size:1rem; font-weight:700; color:var(--ppwr-accent); }
.ppwr-families dd { margin:0; }
.ppwr-services { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px 44px; margin:30px 0 0; }
.ppwr-services article { padding-top:20px; border-top:2px solid var(--ppwr-line); min-width:0; }
.ppwr-services article p { margin:0 0 12px; }
.ppwr-note { padding-left:18px; border-left:3px solid var(--ppwr-accent); margin-top:28px; }
.ppwr-page .ppwr-source, .ppwr-sources p, .ppwr-sources li { font-size:.9375rem; }
.ppwr-sources ul { padding-left:20px; }
.ppwr-sources li { margin-bottom:12px; }
.ppwr-reading { margin-top:18px; font-size:1rem; }
@media(max-width:760px) {
  .ppwr-columns, .ppwr-services { grid-template-columns:1fr; gap:22px; }
  .ppwr-page { width:calc(100% - 32px); padding-top:30px; }
  .ppwr-page h1 { font-size:2.125rem; }
  .ppwr-home h2, .ppwr-page h2 { font-size:1.65rem; }
  .ppwr-timeline > div, .ppwr-families > div { grid-template-columns:1fr; gap:12px; }
  .ppwr-block { padding:28px 0; }
}
