.rsvp-mariage-wrap{max-width:860px;margin:0 auto;padding:20px}
.rsvp-mariage-card{background:#fff;border-radius:16px;padding:22px;box-shadow:0 10px 24px rgba(0,0,0,.08)}
.rsvp-mariage-title{margin:0 0 8px;font-size:28px;line-height:1.2}
.rsvp-mariage-sub{margin:0 0 18px;color:#6F6F6F}
.rsvp-mariage-form .rsvp-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.rsvp-mariage-form .rsvp-field{display:flex;flex-direction:column;gap:6px}
.rsvp-mariage-form label{font-weight:600;font-size:14px}
.rsvp-mariage-form input[type="text"],
.rsvp-mariage-form input[type="tel"],
.rsvp-mariage-form input[type="number"],
.rsvp-mariage-form textarea{width:100%;border:1px solid #E6E6E6;border-radius:12px;padding:12px 12px;font-size:15px;outline:none;background:#fff}
.rsvp-mariage-form textarea{min-height:110px;resize:vertical}
.rsvp-mariage-form .rsvp-checks{display:flex;flex-wrap:wrap;gap:10px}
.rsvp-mariage-form .rsvp-check{display:flex;align-items:center;gap:8px;border:1px solid #E6E6E6;border-radius:999px;padding:10px 12px}
.rsvp-mariage-form .rsvp-actions{margin-top:16px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.rsvp-mariage-form .rsvp-submit{background:#C9A24E;color:#fff;border:0;border-radius:999px;padding:12px 18px;font-weight:700;cursor:pointer;box-shadow:0 10px 18px rgba(201,162,78,.25)}
.rsvp-mariage-form .rsvp-submit:hover{filter:brightness(.95)}
.rsvp-mariage-form .rsvp-note{color:#6F6F6F;font-size:13px}
.rsvp-mariage-alert{border-radius:14px;padding:14px 16px;margin-bottom:16px}
.rsvp-mariage-alert.success{background:rgba(15,61,46,.08);border:1px solid rgba(15,61,46,.18)}
.rsvp-mariage-alert.error{background:rgba(165,42,42,.08);border:1px solid rgba(165,42,42,.18)}
@media (max-width: 680px){.rsvp-mariage-form .rsvp-row{grid-template-columns:1fr}}
