:root{--ink:#1a1714;--gold:#c4b34b;--muted:#484440;--border:#e0d8cc;--card:#fff;--error:#c0392b;--success:#2d6a4f;--text:#e7040a;--bg:#fffaf1;--grapesicle:#dbcddc}@font-face{font-family:AldineExpanded;src:url(../media/AldineExpanded.17hdgnrqtn3r-.woff)}@font-face{font-family:NorwichAldine;src:url(../media/NorwichAldineML.0xkoshagu6~7t.woff)}@font-face{font-family:Interstate;src:url(../media/Interstate-Regular.1295xssoc7xsq.woff)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);justify-content:center;align-items:center;min-height:100vh;padding:2rem 1rem;font-family:Interstate,sans-serif;display:flex}.page{z-index:1;width:100%;max-width:60vw;position:relative}.header{text-align:center;margin-bottom:2rem}.eyebrow{letter-spacing:0;text-transform:uppercase;color:var(--text);margin-bottom:1.5rem;font-family:NorwichAldine;font-size:2rem;line-height:1.8rem}.date{margin-bottom:1.25rem;font-family:NorwichAldine;font-size:1.8rem}.header h1{font-family:AldineExpanded,serif;font-size:8rem;font-weight:300;line-height:1.1}.header h1 em{color:var(--gold);font-style:italic}.divider{justify-content:center;align-items:center;gap:.6rem;margin:0 auto;display:flex}.divider span{background:var(--text);width:20vw;height:2px}.diamond{color:var(--text);font-size:.8rem;background:0 0!important;width:auto!important;height:auto!important}.card{background:var(--card);border:1px solid var(--border);border-radius:2px;max-width:600px;margin:0 auto;padding:2.5rem;box-shadow:0 4px 40px #1a171412,0 1px 3px #1a17140a}.step{animation:.35s fadeUp}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.step.center{text-align:center}.field{margin-bottom:1.5rem}label{letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-bottom:.5rem;font-size:.8rem;font-weight:500;display:block}input[type=text]{border:1px solid var(--border);width:100%;color:var(--ink);background:var(--bg);border-radius:1px;outline:none;padding:.85rem 1rem;font-family:Interstate,sans-serif;font-size:.8rem;font-weight:300;transition:border-color .2s,box-shadow .2s}input[type=text]:focus{border-color:var(--gold);box-shadow:0 0 0 3px #b8965a1f}input[type=text]::placeholder{color:#969188}.card-heading{text-align:center;letter-spacing:.1rem;margin-bottom:.5em;font-family:NorwichAldine;font-size:2rem}.intro{text-align:center;max-width:80%;color:var(--muted);margin:0 auto 1.75rem;font-family:Interstate,serif;font-size:1.25rem;font-weight:300;line-height:1.1}.intro strong{color:var(--ink);font-weight:600}.events{margin-bottom:1.5rem}.event-item{border:1px solid var(--border);border-radius:1px;margin-bottom:.75rem;transition:border-color .2s;overflow:hidden}.event-header{padding:1rem 1.25rem .6rem}.event-name{color:var(--text);text-align:center;margin-bottom:.5rem;font-family:NorwichAldine,serif;font-size:2rem}.event-meta{color:var(--muted);text-align:center;margin-bottom:.2rem;font-size:1rem}.rsvp-options{justify-content:center;gap:.5rem;padding:0 1.25rem 1rem;display:flex}.rsvp-option{border:1px solid var(--border);cursor:pointer;letter-spacing:.05em;color:var(--muted);text-transform:none;border-radius:1px;align-items:center;gap:.5rem;margin:0;padding:.45rem .85rem;font-size:.78rem;font-weight:400;transition:all .15s;display:flex}.rsvp-option input[type=radio]{display:none}.radio-custom{border:1px solid var(--border);border-radius:50%;flex-shrink:0;width:12px;height:12px;transition:all .15s}.rsvp-option.selected{border-color:var(--gold);color:var(--ink);background:#fffdf9}.rsvp-option.selected .radio-custom{border-color:var(--gold);background:var(--gold);box-shadow:inset 0 0 0 2px #fff}.btn{background:var(--ink);width:auto;color:var(--bg);letter-spacing:.2em;text-transform:uppercase;cursor:pointer;border:none;border-radius:1px;justify-content:center;align-items:center;gap:.5rem;margin:0 auto;padding:.9rem 1.5rem;font-family:Interstate,sans-serif;font-size:.8rem;font-weight:500;transition:background .2s,transform .1s;display:flex}.btn:hover:not(:disabled){background:var(--gold);color:var(--ink)}.btn:active:not(:disabled){transform:scale(.99)}.btn:disabled{background:var(--grapesicle);color:var(--ink);cursor:not-allowed}.msg{border-radius:1px;margin-bottom:1.25rem;padding:.75rem 1rem;font-size:.85rem;font-weight:300}.msg.error{color:var(--error);background:#fdf0ef;border:1px solid #e8b4b0}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:13px;height:13px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.success-icon{color:var(--gold);margin-bottom:1rem;font-size:2rem}.success-title{margin-bottom:.75rem;font-family:NorwichAldine,serif;font-size:3rem;font-weight:300}.success-body{color:var(--ink);font-size:1.25rem;font-weight:300;line-height:1.7}.summary{border:1px solid var(--border);text-align:left;border-radius:1px;margin:1rem 0 0;list-style:none;overflow:hidden}.summary li{border-bottom:1px solid var(--border);justify-content:center;align-items:center;padding:.75rem 1.25rem;font-size:.85rem;display:flex}.summary li:last-child{border-bottom:none}.summary-label{color:var(--ink);font-weight:400}.summary-value{letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:500}.summary-value.yes{color:var(--success)}.summary-value.no{color:var(--muted)}.footer-note{text-align:center;color:var(--ink);letter-spacing:.05em;margin-top:1.5rem;font-size:.7rem}.done-actions{flex-direction:row;gap:.65rem;margin-top:1.75rem;display:flex}.done-actions>.btn,.done-actions .btn-secondary{letter-spacing:0;width:48%}.btn-secondary{color:var(--ink);border:3px solid var(--gold);background:0 0;transition:all .2s}.btn-secondary:hover:not(:disabled){border-color:var(--text);color:var(--text);background:0 0}@media screen and (max-width:480px){.page{max-width:none}.header h1{font-size:4rem}.header{margin-bottom:1rem}.eyebrow,.date{margin-bottom:.75rem;font-size:1.5rem}.card{padding:1.5rem}.card-heading{margin-bottom:.75em}.intro{max-width:none;margin-bottom:1.25rem;font-size:1rem}.event-name,.success-title{font-size:1.75rem;line-height:1}.done-actions{flex-direction:column}.done-actions>.btn,.done-actions .btn-secondary{width:100%}}.go-home-message{text-align:center;cursor:pointer;color:var(--text);border-bottom:2px solid;margin-top:20px;text-decoration:none;transition:color .2s;display:block}.go-home-message:hover{color:var(--ink)}.go-home-message_wrapper{justify-content:center;display:flex}.dietary-field{border-top:1px solid var(--muted);margin-top:1.5rem;padding-top:1.5rem}.question-description{color:var(--ink);text-align:center;margin-bottom:1rem;font-size:1.25rem}
