* { box-sizing: border-box; }
body { margin: 0; font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; color: #1f2430; background: #faf8ff; line-height: 1.6; }
.wrap { max-width: 760px; margin: 0 auto; padding: 0 20px; }
.hero { background: #2d1b69; color: #fff; padding: 56px 0 48px; }
.hero h1 { font-size: 2.4rem; line-height: 1.2; margin: 8px 0 12px; }
.tag { text-transform: uppercase; letter-spacing: 0.08em; font-size: 0.8rem; color: #c9b8ff; margin: 0; }
.lead { font-size: 1.1rem; color: #e8e0ff; }
.price { font-size: 1.3rem; font-weight: 700; color: #ffd966; }
.buy { display: inline-block; background: #ffb400; color: #1f1400; font-weight: 700; padding: 14px 22px; border-radius: 8px; text-decoration: none; }
.buy:hover, .buy:focus { background: #ffc938; }
h2 { font-size: 1.6rem; margin-top: 40px; color: #2d1b69; }
h3 { font-size: 1.15rem; margin-bottom: 4px; }
.cards { list-style: none; padding: 0; display: grid; gap: 12px; }
.cards li { background: #fff; border: 1px solid #e0d8f5; border-radius: 8px; padding: 14px 16px; }
.cards strong { display: block; color: #2d1b69; }
.steps { padding-left: 22px; }
.steps li { margin-bottom: 10px; }
.cta { text-align: center; margin: 40px 0; }
footer { padding: 24px 20px 40px; font-size: 0.9rem; color: #555; border-top: 1px solid #e0d8f5; }
