.penny-bubble{background:var(--white);border:1px solid var(--line);border-radius:18px 18px 18px 4px;padding:16px 20px}.penny-bubble .bubble-label{font-size:10px;font-weight:var(--fw-semibold);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-4);margin-bottom:6px}.penny-bubble .bubble-msg{font-size:15px;line-height:1.55;color:var(--ink)}.check-list{display:flex;flex-direction:column;gap:9px;margin-top:14px;padding-top:14px;border-top:1px dashed var(--line)}.check-item{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--ink)}.check-icon{width:18px;height:18px;border-radius:50%;background:var(--ink);color:var(--white);display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:var(--fw-bold);flex-shrink:0}.waitlist-form{display:flex;align-items:center;border:1.5px solid var(--ink);border-radius:var(--r-pill);overflow:hidden;background:var(--white);width:100%;max-width:440px}.waitlist-form input[type=email]{flex:1;border:0;outline:0;padding:13px 18px;font-size:16px;background:transparent;color:var(--ink);font-family:var(--sans);min-width:0}.waitlist-form input::placeholder{color:var(--ink-4)}.waitlist-form button[type=submit]{flex-shrink:0;margin:4px;padding:10px 18px;border-radius:var(--r-pill);background:var(--ink);color:var(--white);font-size:13px;font-weight:var(--fw-medium);white-space:nowrap;font-family:var(--sans);border:0;cursor:pointer}.waitlist-form.on-dark{border-color:#ffffff8c;background:transparent}.waitlist-form.on-dark input[type=email]{color:var(--white);background:transparent}.waitlist-form.on-dark input::placeholder{color:#ffffff8c}.waitlist-form.on-dark button[type=submit]{background:var(--white);color:var(--ink)}.waitlist-form:focus-within{box-shadow:0 0 0 3px #0a0a0a2e}.waitlist-form.on-dark:focus-within{box-shadow:0 0 0 3px #ffffff47}.waitlist-form input[type=email]:focus-visible{outline:0}.form-note{margin-top:10px;font-size:11px;color:var(--ink-4)}.form-note.on-dark{color:#ffffff8c}.tp{--tp-sage: #2B7A78;--tp-shadow-card: 0 1px 2px rgba(10,10,10,.04);--tp-shadow-phone: 0 30px 60px rgba(10,10,10,.18), 0 8px 18px rgba(10,10,10,.08);background:var(--paper);padding:96px 20px;color:var(--ink)}.tp .wrap{text-align:center}.tp .section-header{max-width:880px;margin:0 auto 40px;text-align:center}.tp .section-header h2{margin-top:10px}.tp__sub{font-size:clamp(15px,1.6vw,17px);line-height:1.55;color:var(--ink-2);margin:20px 0 0}@media (max-width: 900px){.tp .section-header h2{font-size:clamp(26px,5vw,36px)}}.tp__toggle{display:inline-flex;gap:4px;padding:4px;background:var(--white);border:1px solid var(--line);border-radius:var(--r-pill);box-shadow:var(--tp-shadow-card);margin:0 auto 40px}.tp__pill{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 20px;border:0;background:transparent;border-radius:var(--r-pill);cursor:pointer;font:inherit;font-weight:var(--fw-semibold);font-size:14px;letter-spacing:-.01em;color:var(--ink-3);transition:background .18s ease,color .18s ease}.tp__pill:hover{color:var(--ink)}.tp__pill.is-active{background:var(--ink);color:var(--white)}.tp__dot{width:6px;height:6px;border-radius:50%;background:var(--ink-4);transition:background .18s ease}.tp__pill.is-active .tp__dot{background:var(--tp-sage)}.tp__pill:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.tp__stage{display:flex;justify-content:center;opacity:1;transform:translateY(0);transition:opacity .2s ease,transform .2s ease}.tp__stage[hidden]{display:none}.tp.is-swapping .tp__stage{opacity:0;transform:translateY(4px)}.tp__phone{position:relative;width:380px;max-width:100%;background:#0a0a0a;border-radius:44px;padding:14px;box-shadow:var(--tp-shadow-phone)}.tp__phone-notch{position:absolute;top:18px;left:50%;transform:translate(-50%);width:108px;height:28px;background:#000;border-radius:999px;z-index:2}.tp__phone-screen{position:relative;width:100%;aspect-ratio:375/780;background:var(--white);border-radius:32px;overflow:hidden}@media (max-width: 480px){.tp__phone{width:340px;border-radius:38px;padding:12px}.tp__phone-screen{border-radius:28px}}.tp__browser{width:100%;max-width:1040px;background:var(--white);border:1px solid var(--line);border-radius:var(--r-card-emph);overflow:hidden;box-shadow:var(--tp-shadow-card)}.tp__browser-bar{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--paper);border-bottom:1px solid var(--line)}.tp__tl{width:10px;height:10px;border-radius:50%;background:#d8d8d4}.tp__url{margin-left:14px;padding:4px 12px;background:var(--white);border:1px solid var(--line);border-radius:var(--r-pill);font-size:12px;color:var(--ink-3);font-variant-numeric:tabular-nums}.tp__browser-screen{position:relative;width:100%;aspect-ratio:16/10;background:var(--white)}@media (max-width: 720px){.tp__browser-bar{display:none}.tp__browser{border-radius:var(--r-card)}.tp__browser-screen{aspect-ratio:4/3}}.tp__phone-screen iframe,.tp__browser-screen iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;display:block}.tp__placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center;background:var(--paper)}.tp__ph-eyebrow{font-size:11px;font-weight:var(--fw-semibold);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-4);margin:0 0 8px}.tp__ph-line{font-size:14px;color:var(--ink-2);margin:0;max-width:36ch}.tp__ph-line code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;background:var(--white);padding:2px 6px;border-radius:6px;border:1px solid var(--line)}.tp__cta{margin-top:48px;display:flex;flex-direction:column;align-items:center;gap:14px}.tp__cta-line{font-size:clamp(15px,1.6vw,17px);color:var(--ink-2);margin:0}.tp__cta-btn{display:inline-flex;align-items:center;min-height:44px;padding:14px 24px;background:var(--ink);color:var(--white);border-radius:var(--r-pill);font-weight:var(--fw-semibold);font-size:15px;text-decoration:none;letter-spacing:-.01em;transition:transform .18s ease}.tp__cta-btn:hover{transform:translateY(-1px)}.tp__cta-btn:focus-visible{outline:2px solid var(--ink);outline-offset:3px}@media (prefers-reduced-motion: reduce){.tp__stage,.tp__pill,.tp__dot,.tp__cta-btn{transition:none}.tp.is-swapping .tp__stage{opacity:1;transform:none}}
