/* "That's your 10" + Reserve my spot (STAGED Oct 9, 2026). Shared by /send and /start. */
.rsv-ov { position:fixed; inset:0; z-index:50; background:rgba(18,20,19,.45); display:flex; align-items:flex-end; justify-content:center; }
.rsv-ov[hidden] { display:none; }
.rsv { width:100%; max-width:440px; background:#FBF8F1; color:#121413; border-radius:22px 22px 0 0; padding:22px 22px calc(22px + env(safe-area-inset-bottom));
  box-shadow:0 -10px 40px rgba(23,60,50,.25); font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif; animation:rsvUp .25s ease both; }
@keyframes rsvUp { from { transform:translateY(30px); opacity:0; } to { transform:none; opacity:1; } }
@media (min-width:600px){ .rsv-ov { align-items:center; } .rsv { border-radius:22px; } }
.rsv .rsv-mark { font-size:1.4rem; color:#A8874A; line-height:1; }
.rsv h2 { font-family:"Playfair Display",Georgia,serif; color:#173C32; font-size:1.55rem; line-height:1.2; margin:.35rem 0 .5rem; }
.rsv p { font-size:.98rem; line-height:1.5; color:#333A37; margin:0 0 .7rem; }
.rsv .rsv-sent { color:#173C32; font-weight:600; }
.rsv label { display:block; font-size:.72rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:#333A37; margin:.75rem 0 .35rem; }
.rsv .rsv-step { display:flex; align-items:center; gap:.6rem; }
.rsv .rsv-step button { width:44px; height:44px; border-radius:50%; border:1.5px solid #173C32; background:#fff; color:#173C32; font-size:1.3rem; font-weight:600; cursor:pointer; }
.rsv .rsv-step output { min-width:2.4rem; text-align:center; font-size:1.25rem; font-weight:700; color:#173C32; }
.rsv .rsv-step span { font-size:.9rem; color:#333A37; }
.rsv input[type=email] { width:100%; font:inherit; font-size:1rem; padding:.75rem .85rem; border:1.5px solid #BBAE90; border-radius:12px; background:#fff; color:#121413; }
.rsv input[type=email]:focus { outline:none; border-color:#173C32; }
.rsv .rsv-go { display:block; width:100%; margin-top:1rem; padding:.95rem 1rem; border:0; border-radius:999px; background:#173C32; color:#F5F0E6; font:inherit; font-weight:600; font-size:1.05rem; cursor:pointer; }
.rsv .rsv-go:disabled { opacity:.65; cursor:default; }
.rsv .rsv-no { display:block; margin:.7rem auto 0; background:none; border:0; color:#333A37; font:inherit; font-size:.92rem; text-decoration:underline; cursor:pointer; }
.rsv .rsv-err { color:#8b3a2e; font-size:.9rem; min-height:1.1em; margin:.5rem 0 0; }
.rsv .rsv-fine { font-size:.8rem; color:#5a605d; margin:.7rem 0 0; }
.rsv.saved .rsv-form { display:none; }
.rsv .rsv-done { display:none; }
.rsv.saved .rsv-done { display:block; }
