body.sand-page{ background:radial-gradient(120% 80% at 50% 0%, #241a52 0%, #0d0a24 55%, #07061a 100%) fixed; background-color:#07061a; }
.sand-wrap{ max-width:720px; margin:0 auto; padding:130px 16px 90px; display:flex; flex-direction:column; gap:28px; }
.sand-head{ text-align:center; }
.sand-head h1{ font-weight:100; font-size:clamp(2.1rem,6vw,3.2rem); letter-spacing:-.01em; line-height:1.15; text-wrap:balance; }
.sand-head p{ color:var(--text-dim); margin-top:12px; font-size:1rem; text-wrap:balance; }

.sand-stage{ display:flex; flex-direction:column; align-items:center; gap:16px; }
.plate{ display:block; width:min(100%, 560px); aspect-ratio:1; border-radius:22px; border:1px solid rgba(183,166,255,.22); box-shadow:0 30px 90px rgba(0,0,0,.55), 0 0 60px rgba(120,90,230,.18); background:#0b0820; }
.caption{ color:var(--text-dim); font-size:.98rem; text-align:center; min-height:1.7em; }
.caption strong{ color:var(--text); font-weight:500; }

.chips{ display:flex; flex-wrap:wrap; justify-content:center; gap:8px; }
.chip{ font-family:var(--font); font-size:.86rem; font-weight:400; color:var(--text-dim); background:var(--panel); border:1px solid var(--border); border-radius:999px; padding:9px 16px; cursor:pointer; transition:background .2s, color .2s, border-color .2s; }
.chip:hover{ color:var(--text); background:var(--panel-strong); }
.chip[aria-pressed="true"]{ color:#120d2c; background:rgba(255,244,232,.95); border-color:transparent; }

.sand-actions{ display:flex; justify-content:center; gap:10px; flex-wrap:wrap; }
.sand-actions .btn-pill{ padding:12px 24px; font-size:.9rem; }
.sand-actions .btn-pill:disabled{ opacity:.35; cursor:default; }
.ghost-btn{ font-family:var(--font); font-size:.9rem; font-weight:400; color:var(--text-dim); background:transparent; border:1px solid var(--border); border-radius:999px; padding:12px 22px; cursor:pointer; }
.ghost-btn:hover{ color:var(--text); }
.ghost-btn[aria-pressed="true"]{ color:var(--text); border-color:var(--violet); }

.sand-why, .sand-cta{ background:var(--panel); border:1px solid var(--border); border-radius:22px; padding:26px 24px; }
.sand-why h2, .sand-cta h2{ font-size:1.15rem; font-weight:500; margin-bottom:10px; }
.sand-why p, .sand-cta p{ color:var(--text-dim); font-size:.95rem; max-width:62ch; }
.sand-why p + p{ margin-top:12px; }
.sand-cta .btn-pill{ margin-top:18px; padding:12px 24px; font-size:.9rem; }
