/* Demo brand — neutral styles. A real brand ships its own design. */
:root { --ink:#14202b; --muted:#5b6876; --bg:#f6f7f9; --card:#fff; --accent:#0a7c5a; --line:#dde3ea; }
* { box-sizing: border-box; }
body { margin:0; font:17px/1.55 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; color:var(--ink); background:var(--bg); }
.demo-ribbon { background:#14202b; color:#fff; text-align:center; font-size:13px; padding:6px 16px; letter-spacing:.04em; }
main { max-width:640px; margin:0 auto; padding:32px 16px 64px; }
h1 { font-size:28px; line-height:1.2; margin:0 0 12px; }
.card { background:var(--card); border:1px solid var(--line); border-radius:12px; padding:24px; margin:20px 0; }
.price { font-size:40px; font-weight:800; margin:8px 0; }
.price .was { color:var(--muted); text-decoration:line-through; font-size:22px; font-weight:500; margin-right:10px; }
.btn { display:block; text-align:center; background:var(--accent); color:#fff; font-weight:700; text-decoration:none; padding:16px 20px; border-radius:10px; margin:16px 0 8px; }
.decline { display:block; text-align:center; color:var(--muted); font-size:14px; margin-top:12px; }
.vwrap { max-width:280px; margin:16px auto; }
.vert { aspect-ratio:9/16; background:#222; color:#bbb; display:flex; align-items:center; justify-content:center; text-align:center; padding:16px; border-radius:10px; font-size:14px; }
footer { text-align:center; font-size:13px; color:var(--muted); padding:24px 16px; }
footer a { color:inherit; margin:0 6px; }
