body,html{margin:0;padding:0}body{min-height:100vh;background-color:var(--p2l-bg);color:var(--p2l-text);font-family:var(--p2l-font-sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3{font-family:var(--p2l-font-display);font-weight:700;letter-spacing:-.02em;line-height:1.05;margin:0}::selection{background:var(--p2l-highlight);color:var(--p2l-text)}.wrap{max-width:var(--p2l-maxw);margin:0 auto;padding-inline:var(--p2l-space-5)}.eyebrow{font-family:var(--p2l-font-mono);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--p2l-text-muted);display:inline-flex;align-items:center;gap:var(--p2l-space-2)}.eyebrow:before{content:"";width:18px;height:2px;background:var(--p2l-accent)}.eyebrow--plain:before{display:none}.pill{display:inline-flex;align-items:center;gap:var(--p2l-space-2);font-family:var(--p2l-font-mono);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--p2l-text);background:var(--p2l-surface);border:1px solid var(--p2l-border);border-radius:var(--p2l-radius-pill);padding:5px 12px}.mark{background:linear-gradient(transparent 46%,var(--p2l-highlight) 46% 90%,transparent 90%);padding-inline:.12em;margin-inline:-.06em}.btn{--btn-bg:var(--p2l-surface);--btn-fg:var(--p2l-text);--btn-bd:var(--p2l-border);display:inline-flex;align-items:center;gap:var(--p2l-space-2);font-family:var(--p2l-font-sans);font-size:15px;font-weight:600;line-height:1;padding:12px 20px;border-radius:var(--p2l-radius-sm);border:1px solid var(--btn-bd);background:var(--btn-bg);color:var(--btn-fg);cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.btn:hover{transform:translate(-1px,-1px);box-shadow:var(--p2l-shadow-hard)}.btn:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.btn--sm{font-size:13px;padding:8px 14px}.btn--accent{--btn-bg:var(--p2l-accent);--btn-fg:var(--p2l-accent-contrast);--btn-bd:var(--p2l-border)}.btn--accent:hover{--btn-bg:var(--p2l-accent-strong)}.btn--ink{--btn-bg:var(--p2l-text);--btn-fg:var(--p2l-on-ink);--btn-bd:var(--p2l-border)}.link-quiet{font-size:14px;color:var(--p2l-text-muted)}.link-quiet:hover{color:var(--p2l-text)}.link-arrow{font-family:var(--p2l-font-sans);font-size:14px;font-weight:600;color:var(--p2l-accent)}.link-arrow:hover{color:var(--p2l-accent-strong)}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:30;background:var(--p2l-surface);border-bottom:1px solid var(--p2l-hairline)}.site-header__inner{max-width:var(--p2l-maxw);margin:0 auto;padding:var(--p2l-space-3) var(--p2l-space-5);display:flex;align-items:center;gap:var(--p2l-space-5)}.brand{display:inline-flex;align-items:baseline;gap:8px;font-family:var(--p2l-font-display);font-weight:700;font-size:18px;letter-spacing:-.02em;flex:none}.brand__mark{align-self:center;display:inline-grid;place-items:center;width:20px;height:20px;font-size:10px;color:var(--p2l-accent-contrast);background:var(--p2l-accent);border:1px solid var(--p2l-border);border-radius:5px}.brand__two{color:var(--p2l-accent)}.brand__tag{font-family:var(--p2l-font-mono);font-size:10px;font-weight:400;letter-spacing:.01em;color:var(--p2l-text-faint)}.site-nav{display:flex;align-items:center;gap:var(--p2l-space-5);margin-inline:auto;font-size:14px;color:var(--p2l-text-muted)}.site-nav>a:hover{color:var(--p2l-text)}.nav-drop{position:relative}.nav-drop__btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;padding:0;font:inherit;font-size:14px;color:var(--p2l-text-muted);cursor:pointer;display:inline-flex;align-items:center;gap:4px}.nav-drop:focus-within .nav-drop__btn,.nav-drop:hover .nav-drop__btn{color:var(--p2l-text)}.nav-drop__menu{position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%);min-width:240px;padding:6px;display:none;background:var(--p2l-surface);border:1px solid var(--p2l-border);border-radius:var(--p2l-radius);box-shadow:var(--p2l-shadow-lg);z-index:40}.nav-drop:focus-within .nav-drop__menu,.nav-drop:hover .nav-drop__menu{display:block}.nav-drop__menu a{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:var(--p2l-radius-sm);font-size:14px;color:var(--p2l-text);white-space:nowrap}.nav-drop__menu a:hover{background:var(--p2l-surface-hover)}.site-header__actions{display:flex;align-items:center;gap:var(--p2l-space-4);flex:none}.site-footer{border-top:1px solid var(--p2l-border);margin-top:var(--p2l-space-12);background:var(--p2l-bg-tint)}.site-footer__inner{max-width:var(--p2l-maxw);margin:0 auto;padding:var(--p2l-space-8) var(--p2l-space-5) var(--p2l-space-6)}.site-footer__cols{display:flex;flex-wrap:wrap;gap:var(--p2l-space-6) var(--p2l-space-10)}.site-footer__col{display:flex;flex-direction:column;gap:8px;min-width:140px}.site-footer__h{font-family:var(--p2l-font-mono);font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--p2l-text-faint);margin-bottom:2px}.site-footer__col a,.site-footer__col span:not(.site-footer__h){font-size:14px;color:var(--p2l-text-muted)}.site-footer__col a:hover{color:var(--p2l-text)}.site-footer__bar{margin-top:var(--p2l-space-6);padding-top:var(--p2l-space-4);border-top:1px solid var(--p2l-hairline);display:flex;flex-wrap:wrap;align-items:center;gap:var(--p2l-space-3) var(--p2l-space-5)}.site-footer__bar .brand{font-size:15px}.site-footer__note{font-size:13px;color:var(--p2l-text-muted)}.site-footer__links{display:flex;gap:var(--p2l-space-4);margin-left:auto;font-size:13px}.site-footer__links a{color:var(--p2l-text-muted)}.site-footer__links a:hover{color:var(--p2l-text)}.page-wrap{max-width:760px;margin:0 auto;padding:var(--p2l-space-10) var(--p2l-space-5) var(--p2l-space-12)}.page-title{font-family:var(--p2l-font-display);font-size:clamp(2rem,4vw,2.8rem);margin:8px 0 var(--p2l-space-3)}.page-lede{font-size:1.05rem;color:var(--p2l-text-muted);margin:0 0 var(--p2l-space-8)}.prose h2{font-family:var(--p2l-font-display);font-size:1.3rem;margin:var(--p2l-space-8) 0 var(--p2l-space-3)}.prose h3{font-size:1.05rem;margin:var(--p2l-space-5) 0 var(--p2l-space-2)}.prose p,.prose ul{margin:0 0 var(--p2l-space-4);line-height:1.7}.prose ul{padding-left:var(--p2l-space-5)}.prose li{margin-bottom:6px}.prose a{color:var(--p2l-accent)}.prose a.btn{color:var(--btn-fg)}.prose .meta{font-family:var(--p2l-font-mono);font-size:12px;color:var(--p2l-text-faint)}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));grid-gap:var(--p2l-space-5);gap:var(--p2l-space-5);margin:var(--p2l-space-6) 0 var(--p2l-space-8)}.price-card{border:1px solid var(--p2l-border);border-radius:var(--p2l-radius);background:var(--p2l-surface);padding:var(--p2l-space-5);display:flex;flex-direction:column;gap:var(--p2l-space-3);box-shadow:var(--p2l-shadow-hard)}.price-card__name{font-family:var(--p2l-font-mono);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--p2l-text-faint)}.price-card__price{font-family:var(--p2l-font-display);font-size:1.8rem;font-weight:700;line-height:1.1}.price-card__price span{font-size:.9rem;font-weight:400;color:var(--p2l-text-muted)}.price-card__meta{font-size:13px;color:var(--p2l-text-muted);margin:0}.price-card ul{margin:0;padding-left:18px;font-size:14px;line-height:1.6}.price-card li{margin-bottom:6px}.price-card .btn{margin-top:auto;justify-content:center}.price-badge{align-self:flex-start;font-family:var(--p2l-font-mono);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--p2l-accent-contrast);background:var(--p2l-accent);border-radius:999px;padding:3px 8px}.billing-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:var(--p2l-space-4);gap:var(--p2l-space-4);margin:var(--p2l-space-5) 0;padding:0}.billing-facts>div{border:1px solid var(--p2l-border);border-radius:var(--p2l-radius);background:var(--p2l-surface);padding:var(--p2l-space-4)}.billing-facts dt{font-family:var(--p2l-font-mono);font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--p2l-text-faint);margin-bottom:4px}.billing-facts dd{margin:0;font-size:1.05rem;font-weight:600}.cancel-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--p2l-space-4);margin-top:var(--p2l-space-6)}.acct-section{margin:var(--p2l-space-7) 0;padding-top:var(--p2l-space-5);border-top:1px solid var(--p2l-hairline)}.acct-section:first-of-type{border-top:0;padding-top:0}.acct-activity{list-style:none;margin:var(--p2l-space-3) 0 0;padding:0;border:1px solid var(--p2l-border);border-radius:var(--p2l-radius);overflow:hidden}.acct-activity li{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px var(--p2l-space-3);padding:10px var(--p2l-space-4);font-size:14px}.acct-activity li+li{border-top:1px solid var(--p2l-hairline)}.acct-activity__what{font-weight:600;min-width:160px}.acct-activity__when{color:var(--p2l-text-muted)}.acct-activity__ua{flex-basis:100%;color:var(--p2l-text-faint);font-family:var(--p2l-font-mono);font-size:11px}.acct-menu{position:relative;flex:none}.acct-menu__btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;padding:0;font:inherit;font-size:14px;font-weight:600;color:var(--p2l-text);cursor:pointer;display:inline-flex;align-items:center;gap:4px}.acct-menu__btn:hover,.acct-menu__btn[aria-expanded=true]{color:var(--p2l-accent)}.acct-menu__menu{position:absolute;top:calc(100% + 10px);right:0;min-width:200px;padding:6px;display:flex;flex-direction:column;background:var(--p2l-surface);border:1px solid var(--p2l-border);border-radius:var(--p2l-radius);box-shadow:var(--p2l-shadow-lg);z-index:40}.acct-menu__item-btn,.acct-menu__menu a{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;width:100%;text-align:left;font:inherit;font-size:14px;color:var(--p2l-text);padding:8px 10px;border-radius:var(--p2l-radius-sm);cursor:pointer}.acct-menu__item-btn:hover,.acct-menu__menu a:hover{background:var(--p2l-surface-hover)}.acct-menu__item-btn{color:var(--p2l-accent-strong);border-top:1px solid var(--p2l-hairline);margin-top:4px;padding-top:10px;border-radius:0 0 var(--p2l-radius-sm) var(--p2l-radius-sm)}.hero{max-width:var(--p2l-maxw);margin:0 auto;padding:var(--p2l-space-10) var(--p2l-space-5) var(--p2l-space-8);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);grid-gap:var(--p2l-space-8);gap:var(--p2l-space-8);align-items:center}.hero__title{font-size:clamp(2.3rem,4.4vw,3.35rem);margin:var(--p2l-space-4) 0 var(--p2l-space-4)}.hero__lede{font-size:1.075rem;color:var(--p2l-text-muted);max-width:46ch;margin:0 0 var(--p2l-space-5)}.hero__cta{display:flex;flex-wrap:wrap;gap:var(--p2l-space-3);margin-bottom:var(--p2l-space-4)}.hero__meta{font-family:var(--p2l-font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--p2l-text-faint)}.marquee{border-block:1px solid var(--p2l-border);background:var(--p2l-text);color:var(--p2l-on-ink);overflow:hidden}.marquee__track{display:flex;gap:var(--p2l-space-6);white-space:nowrap;padding-block:12px;width:max-content;animation:marquee 42s linear infinite}.marquee__item{font-family:var(--p2l-font-mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;display:inline-flex;align-items:center;gap:var(--p2l-space-6)}.marquee__item:after{content:"\2726";color:var(--p2l-accent)}@keyframes marquee{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@media (prefers-reduced-motion:reduce){.marquee__track{animation:none}}.method{max-width:var(--p2l-maxw);margin:0 auto;padding:var(--p2l-space-10) var(--p2l-space-5);display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:var(--p2l-space-5);gap:var(--p2l-space-5)}.compare-card{border-radius:var(--p2l-radius);padding:var(--p2l-space-6);display:flex;flex-direction:column;gap:var(--p2l-space-3)}.compare-card--old{border:1.5px dashed var(--p2l-border-soft);color:var(--p2l-text-muted)}.compare-card--new{border:1px solid var(--p2l-border);background:var(--p2l-surface);box-shadow:var(--p2l-shadow-lg)}.compare-card h2{font-size:1.6rem;color:var(--p2l-text)}.compare-card ul{list-style:none;margin:var(--p2l-space-2) 0 0;padding:0;flex-direction:column;font-size:.95rem}.compare-card li,.compare-card ul{display:flex;gap:var(--p2l-space-3)}.compare-card li:before{font-family:var(--p2l-font-mono);font-weight:700}.compare-card--old li:before{content:"\00D7";color:var(--p2l-text-faint)}.compare-card--new li{color:var(--p2l-text)}.compare-card--new li:before{content:"\2713";color:var(--p2l-accent)}.library{border-top:1px solid var(--p2l-border);background:var(--p2l-bg-tint)}.library__inner{max-width:var(--p2l-maxw);margin:0 auto;padding:var(--p2l-space-10) var(--p2l-space-5) var(--p2l-space-12)}.library__title{font-size:clamp(2rem,4vw,2.9rem);margin:var(--p2l-space-3) 0 var(--p2l-space-3);max-width:18ch}.library__lede{color:var(--p2l-text-muted);margin:0 0 var(--p2l-space-6)}.demo-page{max-width:var(--p2l-demo-maxw);margin:0 auto;padding:var(--p2l-space-8) var(--p2l-space-5) var(--p2l-space-10);display:flex;flex-direction:column;gap:var(--p2l-space-5)}.demo-page__back{font-family:var(--p2l-font-mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--p2l-text-muted)}.demo-page__back:hover{color:var(--p2l-accent)}.not-found{text-align:center;padding-block:var(--p2l-space-12)}.flash{max-width:var(--p2l-maxw);margin:var(--p2l-space-5) auto 0;padding:12px var(--p2l-space-5);display:flex;align-items:center;gap:var(--p2l-space-2);font-size:14px;font-weight:600;color:var(--p2l-on-ink);background:var(--p2l-accent);border:1px solid var(--p2l-border);border-radius:var(--p2l-radius-sm)}.locked{display:flex;flex-direction:column;align-items:flex-start;gap:var(--p2l-space-3);background:var(--p2l-surface);border:1px solid var(--p2l-border);border-radius:var(--p2l-radius-lg);box-shadow:var(--p2l-shadow-lg);padding:var(--p2l-space-8)}.locked__title{font-family:var(--p2l-font-display);font-size:clamp(1.6rem,3vw,2.2rem);margin:0}.locked__body{margin:0 0 var(--p2l-space-2);color:var(--p2l-text-muted);max-width:52ch}@media (max-width:860px){.hero{grid-template-columns:1fr;padding-top:var(--p2l-space-8)}.brand__tag,.site-nav{display:none}}@media (max-width:640px){.site-footer__links{margin-left:0}}