html{scroll-behavior:smooth}.wrap{max-width:1160px;margin:0 auto;padding:0 32px}.ap a,.hdr a,.hero a,.manifesto a,#library a,#how a,.closing a,footer a{text-decoration:none}.hero a:not(.btn),.closing a:not(.btn){color:var(--ap-teal)}.hero a:not(.btn):hover,.closing a:not(.btn):hover{color:var(--fg-on-ink)}.eyebrow{font:var(--t-mono-sm);text-transform:uppercase;letter-spacing:.18em;color:var(--ap-teal-deep)}.hero .eyebrow{color:var(--ap-teal)}.btn{display:inline-flex;align-items:center;gap:8px;font:600 14px var(--font-sans);padding:12px 20px;border-radius:var(--r-sm);border:1px solid transparent;cursor:pointer;transition:all var(--dur) var(--ease);white-space:nowrap}.btn--yellow{background:var(--ap-yellow);color:var(--ap-ink)}.btn--yellow:hover{background:var(--ap-yellow-deep)}.btn--teal{background:var(--ap-teal);color:#f4fbfa}.btn--teal:hover{background:var(--ap-teal-deep)}.btn--ghost-dark{background:transparent;color:var(--ap-yellow-deep)!important;border-color:#ffffff2e}.btn--ghost-dark:hover{background:#ffffff12}.btn--ghost{background:transparent;color:var(--fg-2);border-color:var(--line)}.btn--ghost:hover{background:var(--surface-2);color:var(--fg-1)}.ico{width:1em;height:1em;display:inline-flex}.ico svg{width:1em;height:1em;stroke-width:1.75}.hdr{position:sticky;top:0;z-index:50;background:#022222eb;backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.06)}.hdr__in{display:flex;align-items:center;gap:28px;height:64px}.brand{display:flex;align-items:center;gap:11px}.brand img{height:30px}.brand .wm{font:500 16px/1 var(--font-display);text-transform:uppercase;letter-spacing:.09em;color:#f4fbfa}.nav{display:flex;gap:26px;margin-left:12px}.nav a{font:500 14px var(--font-sans);color:#b7c9c5;transition:color var(--dur) var(--ease)}.nav a:hover{color:#f4fbfa}.hdr__cta{margin-left:auto;display:flex;align-items:center;gap:10px}.hero{position:relative;background:var(--ap-ink);color:var(--fg-on-ink);overflow:hidden}.hero__bg{position:absolute;right:-120px;top:50%;transform:translateY(-50%);width:560px;opacity:.05;pointer-events:none}.hero__in{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;padding-top:92px;padding-bottom:100px}.hero h1{font:400 60px/1.06 var(--font-serif);letter-spacing:-.015em;margin:18px 0 0;color:#f6fbfa;text-wrap:balance}.hero h1 em{font-style:italic;color:var(--ap-yellow)}.hero__sub{font:400 19px/1.65 var(--font-serif);color:#b7c9c5;margin:22px 0 0;max-width:30em}.hero__cta{display:flex;gap:12px;margin-top:34px}.hero__meta{margin-top:26px;font:var(--t-mono-sm);color:#839e98;display:flex;gap:18px;flex-wrap:wrap}.demo{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);overflow:hidden}.demo__bar{display:flex;align-items:center;justify-content:space-between;padding:13px 18px;border-bottom:1px solid var(--line-soft)}.demo__bar .t{font:var(--t-label);text-transform:uppercase;letter-spacing:.12em;color:var(--fg-3)}.demo__bar .badge{font:var(--t-mono-sm);padding:3px 9px;border-radius:var(--r-pill);background:var(--ap-ink);color:var(--ap-yellow)}.demo__text{padding:26px 22px;min-height:150px;font:400 22px/1.6 var(--font-serif);color:var(--fg-1);transition:opacity var(--dur-slow) var(--ease)}.demo__ops{display:flex;flex-wrap:wrap;gap:8px;padding:0 18px 18px}.chip-btn{font:500 13px var(--font-sans);padding:8px 13px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--surface);color:var(--fg-2);cursor:pointer;transition:all var(--dur) var(--ease);display:inline-flex;align-items:center;gap:7px}.chip-btn:hover{border-color:var(--ap-teal);color:var(--ap-teal-deep);background:var(--teal-tint)}.chip-btn.active{background:var(--ap-ink);color:var(--ap-yellow);border-color:var(--ap-ink)}.chip-btn:disabled{opacity:.5;cursor:not-allowed}.chip-btn--reset{margin-left:auto;color:var(--fg-3)}section{padding:96px 0}.sec-head{max-width:720px}.sec-head h2{font:600 34px/1.12 var(--font-display);text-transform:uppercase;letter-spacing:.03em;margin:12px 0 0;color:var(--fg-1)}.sec-head p{font:400 19px/1.7 var(--font-serif);color:var(--fg-2);margin:16px 0 0}.manifesto{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center}.manifesto p{font:400 30px/1.5 var(--font-serif);color:var(--fg-1);max-width:34em;margin:0 auto;text-wrap:pretty}.manifesto em{font-style:italic;color:var(--ap-teal-deep)}.cats{display:flex;flex-wrap:wrap;gap:8px;margin:30px 0 36px}.cat{font:var(--t-mono-sm);text-transform:uppercase;letter-spacing:.08em;padding:6px 13px;border-radius:var(--r-pill);background:var(--teal-tint);color:var(--ap-teal-deep);border:1px solid var(--teal-tint-2);white-space:nowrap}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.ccard{background:var(--surface);border:1px solid var(--line-soft);border-radius:var(--r-md);padding:20px;transition:box-shadow var(--dur) var(--ease),transform var(--dur) var(--ease)}.ccard:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.ccard__h{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.ccard__ic{width:34px;height:34px;border-radius:var(--r-sm);background:var(--surface-2);color:var(--ap-teal-deep);display:flex;align-items:center;justify-content:center;font-size:18px}.ccard__cat{font:var(--t-mono-sm);text-transform:uppercase;color:var(--fg-4)}.ccard__nm{font:600 18px var(--font-sans);color:var(--fg-1);margin-bottom:6px}.ccard__ds{font:400 14.5px/1.55 var(--font-sans);color:var(--fg-2)}.lib-note{font:var(--t-body-sm);color:var(--fg-3);margin-top:24px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:44px}.step__n{font:var(--t-mono);color:var(--ap-teal-deep)}.step__ic{width:46px;height:46px;border-radius:var(--r-md);background:var(--ap-ink);color:var(--ap-yellow);display:flex;align-items:center;justify-content:center;font-size:22px;margin:14px 0 16px}.step h3{font:600 20px var(--font-sans);margin:0 0 8px;color:var(--fg-1)}.step p{font:400 16px/1.6 var(--font-serif);color:var(--fg-2);margin:0}.closing{background:var(--ap-ink);color:var(--fg-on-ink);text-align:center}.closing__mark{height:56px;opacity:.95}.closing h2{font:400 44px/1.1 var(--font-serif);margin:22px 0 0;color:#f6fbfa;text-wrap:balance}.closing h2 em{font-style:italic;color:var(--ap-yellow)}.closing p{font:400 18px/1.6 var(--font-serif);color:#b7c9c5;margin:16px auto 0;max-width:34em}.closing .btn{margin-top:30px}footer{background:var(--surface);border-top:1px solid var(--line);padding:56px 0 40px}.foot__in{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}.foot .wm-dark{font:500 16px/1 var(--font-display);text-transform:uppercase;letter-spacing:.09em;color:var(--fg-1)}.foot__brand{display:flex;align-items:center;gap:10px;margin-bottom:14px}.foot__brand img{height:26px}.foot p{font:400 15px/1.65 var(--font-serif);color:var(--fg-2);max-width:34em;margin:0}.foot__col h4{font:var(--t-label);text-transform:uppercase;letter-spacing:.12em;color:var(--fg-3);margin:0 0 14px}.foot__col a{display:block;font:400 14px var(--font-sans);color:var(--fg-2);margin-bottom:10px;transition:color var(--dur) var(--ease)}.foot__col a:hover{color:var(--ap-teal-deep)}.foot__bottom{margin-top:44px;padding-top:22px;border-top:1px solid var(--line-soft);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;font:var(--t-mono-sm);color:var(--fg-4)}@media(max-width:900px){.hero__in,.foot__in{grid-template-columns:1fr;gap:40px}.grid,.steps{grid-template-columns:1fr}.hero h1{font-size:46px}.nav{display:none}}
