/* === Page tokens === */
.zp-communities{--zp-ink:#272043;--zp-violet:#3a325c;--zp-lilac:#baa1ff;--zp-cyan:#65cfe7;--zp-cream:#fff9ee;--zp-surface:#fffdf8;--zp-muted:#5f566f;--zp-amber:#f5a623;--zp-accent-ink:#a25700;--zp-line:#b29acb;--zp-radius:24px;--zp-side:40px;--zp-font:Montserrat,Arial,sans-serif;margin:0;color:var(--zp-ink);background:var(--zp-cream);font:400 17px/1.65 var(--zp-font);overflow-wrap:anywhere}
.zp-communities *{box-sizing:border-box}
.zp-communities section{padding:76px var(--zp-side);overflow:clip}
.zp-communities .zp-inner{max-width:1360px;margin:0 auto}
.zp-communities h1,.zp-communities h2,.zp-communities h3{font-weight:800;line-height:1.13;letter-spacing:-.035em;margin:0;text-wrap:balance}
.zp-communities h1{font-size:clamp(36px,4vw,62px);max-width:11em}
.zp-communities h2{font-size:clamp(29px,3.1vw,45px);max-width:29em}
.zp-communities h3{font-size:21px;line-height:1.3;letter-spacing:-.025em}
.zp-communities p{margin:16px 0 0}
.zp-communities a{color:inherit;text-underline-offset:4px;text-decoration-thickness:1px}
.zp-communities img{display:block;max-width:100%;height:auto}
.zp-communities .zp-eyebrow{margin:0 0 12px;color:#70508e;font-size:12px;font-weight:800;line-height:1.45;letter-spacing:.09em;text-transform:uppercase}
.zp-communities .zp-brand{margin:0 0 18px}
.zp-communities .zp-brand img{width:auto;height:44px}
.zp-communities .zp-lead{font-size:19px;line-height:1.6;max-width:40em}
.zp-communities .zp-small{font-size:14px;color:var(--zp-muted);line-height:1.65}
.zp-communities .zp-dark{background:var(--zp-ink);color:var(--zp-cream)}
.zp-communities .zp-dark .zp-eyebrow{color:var(--zp-lilac)}
.zp-communities .zp-scene{object-fit:contain;flex:none}
.zp-communities .zp-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;align-items:center}
.zp-communities .zp-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:12px 32px;border:2px solid transparent;border-radius:32px;font:800 15px/1.3 var(--zp-font);letter-spacing:.08em;text-transform:uppercase;text-align:center;text-decoration:none;cursor:pointer;transition:transform .2s,box-shadow .2s,background-color .2s;max-width:100%}
.zp-communities .zp-btn--primary{background:var(--zp-amber);color:var(--zp-ink)}
.zp-communities .zp-btn--ghost{background:transparent;border-color:#8b68aa;color:var(--zp-ink)}
.zp-communities :focus-visible{outline:3px solid #70508e;outline-offset:5px}
.zp-communities .zp-dark :focus-visible{outline-color:var(--zp-cyan)}
.zp-communities .zp-btn:active{transform:scale(.985)}
.zp-communities .zp-btn:disabled{cursor:not-allowed;opacity:.65}
@media(hover:hover){.zp-communities .zp-btn:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 8px 24px #27204320}.zp-communities .zp-btn--ghost:hover{background:#eee0fa}.zp-communities a:not(.zp-btn):hover{text-decoration-thickness:2px}.zp-communities .zp-example__card:hover{transform:translateY(-3px);box-shadow:0 0 0 6px #baa1ff40,0 18px 40px #8b68aa33}.zp-communities .zp-example__card:hover .zp-example__visual{border-color:var(--zp-amber)}}
/* === zp-hero === */
.zp-communities .zp-hero{padding-top:66px;padding-bottom:56px;background:radial-gradient(ellipse at 84% 62%,#f4e5c950,transparent 55%),var(--zp-cream)}
.zp-communities .zp-hero__grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr);gap:12px;align-items:center}
.zp-communities .zp-hero__copy{position:relative;z-index:1}
.zp-communities .zp-hero__copy .zp-lead{max-width:32em}
.zp-communities .zp-hero__image{width:100%;max-width:none;object-fit:contain;filter:drop-shadow(0 12px 18px #d5bf9710)}
/* === zp-stories === */
.zp-communities .zp-step-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:0;margin:32px 0 0;list-style:none}
.zp-communities .zp-step{display:flex;gap:18px;align-items:center;padding:18px 22px 18px 14px;border-radius:var(--zp-radius);background:var(--zp-cream);color:var(--zp-ink)}
.zp-communities .zp-step p{font-size:15px;line-height:1.6;margin-top:8px}
.zp-communities .zp-step .zp-scene{width:44%;max-width:190px;height:auto}
/* === zp-example === */
.zp-communities .zp-example__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);align-items:center;gap:70px}
.zp-communities .zp-example .zp-btn{margin-top:24px}
.zp-communities .zp-example__visual{display:block;margin:0;padding:0 0 22px;overflow:hidden;border:2px solid #8b68aa;border-radius:var(--zp-radius);background:linear-gradient(160deg,#fffdf8,#fff1d5)}
.zp-communities .zp-example__bar{display:flex;align-items:center;gap:14px;padding:12px 20px;background:var(--zp-ink);color:var(--zp-cream);font-weight:800;font-size:15px;line-height:1.3}
.zp-communities .zp-example__bar img{width:auto;height:26px}
.zp-communities .zp-example__go{margin-left:auto;padding:4px 12px;border:1.5px solid var(--zp-lilac);border-radius:999px;color:var(--zp-lilac);font-size:13px;letter-spacing:.04em}
.zp-communities .zp-example__card{display:block;border-radius:var(--zp-radius);color:inherit;text-decoration:none;transition:transform .2s,box-shadow .2s}
.zp-communities .zp-example__card .zp-example__visual{transition:border-color .2s}
.zp-communities .zp-example__drawing{display:block;padding:18px 24px 0}

