.buy-page{background:var(--bg);padding:80px 0 100px;min-height:80vh}.buy-container{max-width:1180px;margin:0 auto;padding:0 20px}.buy-header{margin-bottom:18px;max-width:720px}.buy-h1{font-family:var(--font-display);font-size:clamp(28px,4vw,40px);font-weight:700;color:var(--text);letter-spacing:-.02em;margin:0 0 8px}.buy-sub{font-size:15px;color:var(--text-body);line-height:1.55;margin:0}.preview-banner{display:flex;align-items:center;gap:14px;background:#c62a2a0f;border:1px solid rgba(198,42,42,.3);border-radius:999px;padding:8px 16px;margin-bottom:24px;font-size:13px;color:var(--text)}.preview-pill{background:var(--text);color:#fff;font-weight:700;letter-spacing:.08em;padding:4px 10px;border-radius:999px;font-size:11px;flex-shrink:0}.preview-msg{color:var(--text-body);opacity:.9}.buy-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}.chat-pane{background:#fff;border-radius:var(--radius-lg);border:1px solid rgba(0,0,0,.06);box-shadow:var(--shadow);display:flex;flex-direction:column;min-height:620px;overflow:hidden}.chat-head{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid rgba(0,0,0,.06)}.chat-avatar{width:36px;height:36px;border-radius:50%;background:var(--text);color:#fff;font-family:var(--font-display);font-size:13px;font-weight:700;letter-spacing:.04em;display:flex;align-items:center;justify-content:center}.chat-name{font-family:var(--font-display);font-weight:700;font-size:15px;color:var(--text)}.chat-status{font-size:12px;color:var(--text-body);opacity:.7;display:flex;align-items:center;gap:6px}.chat-status-dot{width:7px;height:7px;border-radius:50%;background:#1b6e3a;animation:pulse-dot 2s ease-in-out infinite}.chat-thread{flex:1;overflow-y:auto;padding:22px;display:flex;flex-direction:column;gap:12px;max-height:560px}.msg{display:flex;width:100%;max-width:100%}.msg--bot{justify-content:flex-start}.msg--user{justify-content:flex-end}.msg-body{display:inline-block;max-width:78%;border-radius:16px;padding:12px 16px;font-size:14px;line-height:1.55;color:var(--text-body);word-wrap:break-word}.msg--bot .msg-body{background:#dbb1571f;border:1px solid rgba(219,177,87,.3);border-bottom-left-radius:4px}.msg--user .msg-body{background:var(--text);color:#fff;border-bottom-right-radius:4px;box-shadow:0 2px 8px #c62a2a2e}.msg-body p{margin:0}.msg-body strong{color:var(--text);font-weight:700}.msg--user .msg-body strong{color:#fff}.msg--enter{animation:msg-in .24s ease both}@keyframes msg-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.chat-controls{padding:16px 20px 20px;border-top:1px solid rgba(0,0,0,.06);display:flex;flex-wrap:wrap;gap:8px;background:#fff}.chip{background:#fff;border:1.5px solid rgba(0,0,0,.1);color:var(--text);font-family:var(--font-body);font-size:13px;font-weight:600;padding:10px 14px;border-radius:999px;cursor:pointer;transition:background .14s,border-color .14s,transform .14s}.chip:hover{background:#dbb1571a;border-color:var(--tertiary);transform:translateY(-1px)}.chip--restart{border-color:var(--text);color:var(--text)}.chat-input{display:flex;gap:8px;width:100%}.chat-input input{flex:1;padding:10px 14px;font-size:14px;border-radius:var(--radius);border:1.5px solid rgba(0,0,0,.1);font-family:var(--font-body);color:var(--text-body)}.chat-input input:focus{outline:0;border-color:var(--tertiary)}.chat-input button{background:var(--text);color:#fff;border:0;font-family:var(--font-body);font-weight:700;padding:10px 18px;border-radius:var(--radius);cursor:pointer;font-size:13px;letter-spacing:.04em}.stripe-panel{background:#fff!important;border:1px solid rgba(0,0,0,.08)!important;padding:18px!important;max-width:380px}.sp-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:14px}.sp-name{font-family:var(--font-display);font-weight:700;color:var(--text);font-size:15px;line-height:1.2}.sp-blurb{font-size:12px;color:var(--text-body);opacity:.75;margin-top:4px;line-height:1.45}.sp-price{text-align:right;flex-shrink:0}.sp-amount{font-family:var(--font-display);font-weight:700;font-size:22px;color:var(--text);display:block;line-height:1}.sp-cadence{font-size:11px;color:var(--text-body);opacity:.65}.sp-form{display:flex;flex-direction:column;gap:8px}.sp-form label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-body);opacity:.65;display:flex;flex-direction:column;gap:4px}.sp-form input{padding:8px 10px;border-radius:6px;border:1px solid rgba(0,0,0,.12);font-size:13px;font-family:var(--font-body);background:#00000005}.sp-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sp-pay{background:var(--text);color:#fff;border:0;padding:10px 14px;border-radius:var(--radius);font-family:var(--font-body);font-weight:700;font-size:13px;cursor:pointer;margin-top:4px;letter-spacing:.02em}.sp-pay:hover{background:#a72020}.sp-meta{font-size:11px;color:var(--text-body);opacity:.55;text-align:center;margin-top:6px}.upsell-pane{background:#fff;border-radius:var(--radius-lg);border:1px solid rgba(0,0,0,.06);padding:24px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:18px;position:sticky;top:100px}.upsell-eyebrow{display:block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--tertiary);margin-bottom:4px}.upsell-head h3{font-family:var(--font-display);font-size:18px;color:var(--text);margin:0}.upsell-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.upsell-item{background:#dbb15714;border:1px solid rgba(219,177,87,.25);border-radius:var(--radius);padding:12px 14px;display:flex;flex-direction:column;gap:2px}.upsell-item--placeholder{background:transparent;border:1px dashed rgba(0,0,0,.15);font-size:13px;color:var(--text-body);opacity:.7;text-align:center;padding:16px}.upsell-item .upsell-label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--tertiary)}.upsell-item strong{font-family:var(--font-display);font-size:14px;font-weight:700;color:var(--text);letter-spacing:-.005em}.upsell-price{font-size:12px;color:var(--text-body);opacity:.8}.upsell-foot{background:var(--text);color:#fff;border-radius:var(--radius);padding:14px 16px;font-size:13px;line-height:1.5;margin-top:4px}.upsell-foot strong{display:block;font-family:var(--font-display);font-weight:700;margin-bottom:4px}@media(max-width:900px){.buy-grid{grid-template-columns:1fr}.upsell-pane{position:static}}
