#confirmar{position:relative;isolation:isolate;overflow:hidden}
#confirmar:before{content:'';position:absolute;z-index:-1;inset:130px -30px 0;background:url('assets/mesa.webp') center top / min(650px,135%) auto no-repeat;opacity:.24;pointer-events:none}
#confirmar #rsvp-form{padding:20px 16px 8px;background:#fffdf3c9;border:1px solid #e6dfcc;border-radius:16px;box-shadow:0 10px 35px #62563808}
#confirmar .signoff{margin-top:30px}
.signoff-image{display:block;width:min(140px,37%);height:auto;margin:0 auto 4px;object-fit:contain}
.gift-intro{display:grid;grid-template-columns:minmax(0,1fr) 100px;gap:18px;align-items:center;max-width:540px;margin:0 auto 24px}
.gift-message p{font-size:13px;line-height:1.7;margin:0 0 16px;color:var(--muted)}
.gift-message p:last-child{margin-bottom:0}
.gift-message .gift-lead{font-family:Georgia,serif;font-size:18px;line-height:1.4;color:var(--ink)}
.gift-portrait{width:100%;aspect-ratio:1/2;object-fit:cover;border-radius:0 100% 100% 0 / 0 50% 50% 0}
.gift-bank{max-width:540px;margin:0 auto 18px;background:#ece8da;border:1px solid #e0d8c5;border-radius:12px;padding:20px}
.gift-bank>.small-label{margin:0 0 19px}
.gift-bank dl{margin:0;display:grid;gap:17px}
.gift-bank dt{font-size:12px;color:var(--muted);margin-bottom:7px}
.gift-bank dd{margin:0;display:flex;align-items:center;gap:10px;font-size:clamp(15px,4.6vw,20px);font-variant-numeric:tabular-nums;letter-spacing:.025em;color:var(--wine);user-select:all;overflow-wrap:anywhere}.gift-bank dd>span{min-width:0;overflow-wrap:anywhere}.copy-button{display:inline-grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:1px solid #efd751;border-radius:50%;background:#fffdf7;color:var(--wine);font-size:21px;line-height:1;cursor:pointer;user-select:none;transition:transform .2s,background .2s,color .2s}.copy-button:hover,.copy-button:focus-visible{background:var(--wine);color:white;transform:scale(1.08)}.copy-button.copied{background:var(--olive);border-color:var(--olive);color:white}.copy-status{min-height:17px;margin:15px 0 0;text-align:center;font-size:11px;color:var(--olive)}
.gift-registry{max-width:540px;margin:auto;border-radius:12px}
.gift-registry h3{font:22px Georgia,serif;margin:0 0 12px}
.gift-registry .gold{margin-top:18px}
@media(min-width:600px){.gift-intro{grid-template-columns:minmax(0,1fr) 140px;gap:28px}.gift-message p{font-size:14px}.gift-message .gift-lead{font-size:22px}}
@media(max-width:350px){.gift-intro{grid-template-columns:minmax(0,1fr) 75px;gap:12px}.gift-message .gift-lead{font-size:17px}.gift-bank{padding:17px}}
.rsvp-result{max-width:460px;margin:0 auto;padding:26px 20px;background:#fffdf7;border:1px solid #ecd8d9;border-radius:16px;text-align:center}
.rsvp-result[hidden],#rsvp-form[hidden]{display:none!important}
.rsvp-result h3{font:32px/1.2 Georgia,serif;color:var(--wine);margin:14px 0;outline:none}
.rsvp-result>p:not(.small-label):not(.footnote){font-size:14px;line-height:1.9;color:var(--ink)}
.rsvp-result .confirm{margin-top:22px;width:100%}
.rsvp-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 20px;margin-top:18px}
.rsvp-actions .text-link{border:0;background:transparent;text-decoration:underline;margin:0;padding:10px 0;font:inherit;font-size:12px;min-height:44px;cursor:pointer}
#rsvp-form button:disabled{opacity:.65;cursor:wait}
#confirmar #guest-name{font-size:16px}
