:root{
--font-sans:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
--font-body:var(--font-sans);
--font-display:var(--font-sans);

--fw-light:300; /* @kind font */
--fw-regular:400; /* @kind font */
--fw-medium:500; /* @kind font */
--fw-semibold:600; /* @kind font */
--fw-bold:700; /* @kind font */

/* size · line-height · tracking, transcribed from 02 · Typography */
--fs-h1:48px; /* @kind font */   --lh-h1:1; /* @kind font */    --ls-h1:-1.84px; /* @kind font */
--fs-h2:40px; /* @kind font */   --lh-h2:1.2; /* @kind font */  --ls-h2:-0.4px; /* @kind font */
--fs-h3:28px; /* @kind font */   --lh-h3:1.2; /* @kind font */  --ls-h3:-0.4px; /* @kind font */
--fs-h4:24px; /* @kind font */   --lh-h4:1.375; /* @kind font */--ls-h4:-0.66px; /* @kind font */
--fs-h5:20px; /* @kind font */   --lh-h5:1.32; /* @kind font */ --ls-h5:-0.36px; /* @kind font */
--fs-body-lg:24px; /* @kind font */ --lh-body-lg:1.5; /* @kind font */
--fs-body:20px; /* @kind font */    --lh-body:1.5; /* @kind font */
--fs-body-sm:16px; /* @kind font */ --lh-body-sm:1.4; /* @kind font */
--fs-caption:16px; /* @kind font */ --lh-caption:1.4; /* @kind font */
--fs-label:20px; /* @kind font */   --lh-label:1.2; /* @kind font */
--fs-button:16px; /* @kind font */  --lh-button:1; /* @kind font */
--fs-button-big:20px; /* @kind font */ --lh-button-big:1.4; /* @kind font */
--fs-nav:18px; /* @kind font */     --lh-nav:21.7px; /* @kind font */ --ls-nav:-0.07px; /* @kind font */
--fs-field:16px; /* @kind font */   --lh-field:1.4; /* @kind font */
--fs-field-label:14px; /* @kind font */
--fs-helper:12px; /* @kind font */
}

/* Type classes — the full hierarchy, nothing else. */
.pp-h1{font-family:var(--font-display);font-weight:var(--fw-semibold);font-size:var(--fs-h1);line-height:var(--lh-h1);letter-spacing:var(--ls-h1);color:var(--text-body);margin:0;text-wrap:pretty}
.pp-h2{font-family:var(--font-display);font-weight:var(--fw-semibold);font-size:var(--fs-h2);line-height:var(--lh-h2);letter-spacing:var(--ls-h2);color:var(--text-heading);margin:0;text-wrap:pretty}
.pp-h3{font-family:var(--font-display);font-weight:var(--fw-semibold);font-size:var(--fs-h3);line-height:var(--lh-h3);letter-spacing:var(--ls-h3);color:var(--text-heading);margin:0;text-wrap:pretty}
.pp-h4{font-family:var(--font-display);font-weight:var(--fw-semibold);font-size:var(--fs-h4);line-height:var(--lh-h4);letter-spacing:var(--ls-h4);color:var(--text-heading);margin:0;text-wrap:pretty}
.pp-h5{font-family:var(--font-display);font-weight:var(--fw-semibold);font-size:var(--fs-h5);line-height:var(--lh-h5);letter-spacing:var(--ls-h5);color:var(--text-heading);margin:0}
.pp-body-lg{font-family:var(--font-body);font-weight:var(--fw-regular);font-size:var(--fs-body-lg);line-height:var(--lh-body-lg);color:var(--text-body);margin:0;text-wrap:pretty}
.pp-body{font-family:var(--font-body);font-weight:var(--fw-light);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text-body);margin:0;text-wrap:pretty}
.pp-body-sm{font-family:var(--font-body);font-weight:var(--fw-light);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);color:var(--text-body);margin:0}
.pp-caption{font-family:var(--font-body);font-weight:var(--fw-regular);font-size:var(--fs-caption);line-height:var(--lh-caption);color:var(--text-secondary);margin:0}
.pp-label{font-family:var(--font-body);font-weight:var(--fw-bold);font-size:var(--fs-label);line-height:var(--lh-label);text-transform:uppercase;color:var(--pp-green-text);margin:0}
