
    /* Scoped Purposeful Play Section Layouts */
    .pp-credentials {
      margin-top: 14px;
      font-family: var(--font-heading);
      font-size: 14.5px;
      font-weight: 700;
      color: var(--sp-ink);
    }
    .sc-hero-photo--portrait img {
      aspect-ratio: 4 / 3;
      object-position: center 35%;
    }
    .pp-framework {
      margin-top: 26px;
      padding-top: 24px;
      border-top: 1px solid rgba(77, 98, 84, 0.14);
    }
    .pp-framework-head {
      display: flex;
      align-items: baseline;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 12px;
      margin-bottom: 18px;
    }
    .pp-framework-head h2 {
      font-family: var(--font-heading);
      font-size: clamp(22px, 2.2vw, 28px);
      font-weight: 800;
      color: var(--sp-ink);
      letter-spacing: -0.02em;
    }
    .pp-framework-head h2 em {
      font-family: var(--font-serif-soft);
      font-style: italic;
      font-weight: 500;
      color: var(--sp-deep-sage);
    }
    .pp-components {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 16px;
    }
    .pp-components > div {
      border-radius: var(--radius-md);
      padding: 20px 22px;
      border: 1px solid rgba(77, 98, 84, 0.16);
      display: flex;
      flex-direction: column;
      gap: 10px;
    }
    .pp-components > div:nth-child(1) { background: var(--sp-sage-tint); }
    .pp-components > div:nth-child(2) { background: var(--sp-blush-tint); }
    .pp-components > div:nth-child(3) { background: var(--sp-teal-tint); }
    .pp-components > div:nth-child(4) { background: var(--sp-cream); }
    .pp-components dt {
      font-family: var(--font-heading);
      font-size: 16.5px;
      font-weight: 800;
      color: var(--sp-ink);
      line-height: 1.3;
    }
    .pp-components dd {
      font-size: 14.5px;
      color: var(--sp-quiet);
      line-height: 1.55;
    }
    .pp-attendance-note {
      margin-top: 14px;
      font-size: 14px;
      color: var(--sp-quiet);
      text-align: center;
    }
    .pp-path {
      border-bottom: 1px solid rgba(77, 98, 84, 0.14);
    }
    .pp-section-intro {
      max-width: 58ch;
      margin-bottom: 32px;
    }
    .pp-section-intro p:not(.sc-kicker) {
      margin-top: 12px;
      font-size: 17.5px;
      color: var(--sp-quiet);
    }
    .pp-path-steps {
      list-style: none;
      margin: 0;
      padding: 0;
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 20px;
    }
    .pp-path-steps li {
      background: var(--sp-white);
      border: 1px solid rgba(77, 98, 84, 0.16);
      border-radius: var(--radius-lg);
      padding: 26px 28px;
      box-shadow: var(--sp-shadow-card);
      display: flex;
      flex-direction: column;
      gap: 16px;
    }
    .pp-path-steps li > span {
      width: 44px;
      height: 44px;
      border-radius: 12px;
      font-family: var(--font-heading);
      font-size: 15px;
      font-weight: 800;
      color: var(--sp-ink);
      display: grid;
      place-items: center;
    }
    .pp-path-steps li:nth-child(1) > span { background: var(--sp-butter); }
    .pp-path-steps li:nth-child(2) > span { background: var(--sp-sage); }
    .pp-path-steps li:nth-child(3) > span { background: var(--sp-dusty-teal); }
    .pp-path-steps h3 {
      font-family: var(--font-heading);
      font-size: 20px;
      font-weight: 800;
      color: var(--sp-ink);
      margin-bottom: 8px;
    }
    .pp-path-steps p {
      font-size: 15.5px;
      color: var(--sp-quiet);
      line-height: 1.6;
    }
    .pp-example-lead {
      font-family: var(--font-heading);
      font-size: 20px !important;
      font-weight: 800;
      color: var(--sp-ink) !important;
    }
    .pp-example-takeaway {
      margin-top: 18px;
      background: var(--page-accent-tint);
      border-left: 5px solid var(--page-accent);
      padding: 14px 18px;
      border-radius: 12px;
      font-family: var(--font-heading);
      font-size: 15.5px !important;
      font-weight: 700;
      color: var(--sp-ink) !important;
    }
    .pp-themes {
      list-style: none;
      margin: 14px 0 10px;
      padding: 0;
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }
    .pp-themes li {
      font-family: var(--font-heading);
      font-size: 12.5px;
      font-weight: 700;
      background: var(--sp-white);
      color: var(--sp-ink);
      border: 1px solid rgba(77, 98, 84, 0.2);
      padding: 5px 12px;
      border-radius: 999px;
    }
    .pp-schedule-note {
      margin-top: 14px;
      font-size: 14.5px;
      color: var(--sp-quiet);
    }
    .pp-support-surface {
      border-top: 1px solid rgba(77, 98, 84, 0.14);
    }
    .pp-support-copy {
      margin-top: 28px;
      display: grid;
      grid-template-columns: 1.05fr 0.95fr;
      gap: clamp(24px, 4vw, 44px);
      align-items: stretch;
    }
    .pp-support-card {
      background: var(--sp-white);
      border: 1px solid rgba(77, 98, 84, 0.16);
      border-radius: var(--radius-lg);
      padding: clamp(26px, 3.8vw, 40px);
      box-shadow: var(--sp-shadow-card);
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      gap: 18px;
    }
    .pp-support-card.pp-connection {
      background: var(--sp-teal-tint);
    }
    .pp-support-card h3 {
      font-family: var(--font-heading);
      font-size: 22px;
      font-weight: 800;
      color: var(--sp-ink);
      margin-bottom: 10px;
    }
    .pp-support-card > div > p {
      font-size: 16px;
      color: var(--sp-quiet);
      line-height: 1.65;
    }
    .pp-explore-links {
      margin-top: 16px;
      display: flex;
      flex-wrap: wrap;
      gap: 12px 24px;
    }
    @media (max-width: 1040px) {
      .pp-components {
        grid-template-columns: repeat(2, 1fr);
      }
    }
    @media (max-width: 960px) {
      .pp-path-steps,
      .pp-support-copy {
        grid-template-columns: 1fr;
      }
    }
    @media (max-width: 599px) {
      .pp-components {
        grid-template-columns: 1fr;
      }
    }
