/* PPM 2027 base: tokens, type, buttons. Fonts are files, never data URIs. */
@font-face{font-family:'Satoshi';src:url(../fonts/Satoshi-Variable.woff2) format('woff2');font-weight:300 900;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url(../fonts/IBMPlexMono-Medium.woff2) format('woff2');font-weight:500;font-display:swap}
:root{
  --blue:#0065E1;--blue-hover:#0052B8;--navy:#0A1F44;--ink:#1C2B39;--pblue:#91AFD0;
  --green:#01CF11;--muted:#5B7288;--light:#F4F8FC;--border:#E3EDF5;--white:#FFFFFF;
  --f-keynote:#0065E1;--f-panel:#00A3E0;--f-debate:#E04A2F;--f-open:#4B7091;--f-round:#4B7091;
  --f-convo:#D05C3B;--f-circle:#C58B1B;--f-master:#F08C00;--f-workshop:#168672;--f-case:#0A1F44;--f-dinner:#C58B1B;
  --font:'Satoshi',system-ui,sans-serif;--mono:'IBM Plex Mono',ui-monospace,monospace;
  --maxw:1200px;--pad:clamp(20px,4.4vw,96px);--r-panel:6px;--r-badge:3px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{font-family:var(--font);color:var(--ink);background:var(--white);-webkit-font-smoothing:antialiased;font-size:17px;line-height:1.55}
img{display:block;max-width:100%}
a{color:inherit}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px}

.ppm-wrap{max-width:1920px;margin:0 auto;padding:0 var(--pad)}
.ppm-kicker{font-family:var(--mono);font-weight:500;font-size:13px;letter-spacing:.18em;text-transform:uppercase}
.ppm-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;font:700 18px/1 var(--font);letter-spacing:-.01em;padding:21px 34px;border-radius:999px;background:var(--blue);color:#fff;text-decoration:none;border:1.5px solid var(--blue);cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.ppm-btn svg{width:18px;height:18px;flex:none;transition:transform .2s}
.ppm-btn:hover{background:var(--blue-hover);border-color:var(--blue-hover)}
.ppm-btn:hover svg{transform:translateX(4px)}
.ppm-btn--outline{background:transparent;border-color:#fff;color:#fff}
.ppm-btn--outline:hover{background:#fff;border-color:#fff;color:var(--navy)}
.ppm-btn--outline.on-light{border-color:var(--navy);color:var(--navy)}
.ppm-btn--outline.on-light:hover{background:var(--navy);border-color:var(--navy);color:#fff}
.ppm-btns{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.ppm-link{font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.ppm-link:hover{text-decoration-thickness:2px}
.ppm-edit{position:relative;white-space:nowrap;font-weight:300;color:var(--pblue)}
.ppm-edit__bar{position:absolute;left:-.04em;right:-.03em;top:54%;height:.09em;background:var(--green);transform-origin:left center}
.ppm-edit-new{display:inline-block}
