:root {
  --ink: #45243d;
  --muted: #705767;
  --cream: #fff8f5;
  --paper: #ffffff;
  --green: #9f2459;
  --sage: #ffe5df;
  --gold: #ed6574;
  --line: #f0d7e0;
  --berry: #9f2459;
  --coral: #ed6574;
  --peach: #ffb287;
}
body { background: var(--cream); }
.site-header { background: rgba(255,248,245,.97); border-bottom-color: var(--line); }
.brand-mark { background: linear-gradient(135deg,var(--berry),var(--coral)); }
.brand-accent { color: var(--berry); font-weight: 650; }
.site-nav a:hover { color: var(--berry); }
.eyebrow { color: var(--berry); }
em { color: var(--berry); }
a:focus-visible,button:focus-visible { outline-color: var(--coral); }
.button-primary { background: var(--berry); color: white; box-shadow: 0 8px 22px #9f245929; }
.button-primary:hover { background: #812048; box-shadow: 0 12px 28px #9f24593b; }
.button-outline { border-color: #da9ab5; background: white; }
.button-outline:hover { border-color: var(--berry); color: var(--berry); }
.hero { background: radial-gradient(ellipse at 90% 12%,#ffe2d8 0,transparent 44%),var(--cream); }
.hero-visual { background: radial-gradient(circle at center,#fff 0 16%,#ffd4ca 16% 35%,#ffe9e1 35% 57%,#fff4ef 57% 100%); }
.orbit { border-color: #efacc0; }
.visual-heart { color: var(--coral); }
.visual-card { box-shadow: 0 12px 35px #7c2c5424; }
.card-dot { background: var(--coral); }
.visual-caption { color: #79445f; }
.step { border-color: var(--line); box-shadow: 0 10px 26px #9f245908; }
.step-no { color: var(--berry); }
.privacy-line { color: var(--berry); }
.launch-panel { background: linear-gradient(135deg,#ffe0e0,#ffd5c1); }
.launch-pill { border-color: #d994aa; background: #ffffff7a; }
.site-footer { background: #45243d; color: #fff1f4; }
@media (prefers-reduced-motion: no-preference) {
  .button { transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease; }
}
