.reference-rsvp{--rsvp-green:#063f34;--rsvp-gold:#b97d27;padding:16px 22px 112px!important;color:var(--rsvp-green)!important;background:#fffaf3 url('../images/invitation-silk-floral-v2.png') center top/cover fixed no-repeat!important}
.reference-rsvp:before,.reference-rsvp:after{display:none!important}
.reference-rsvp>header{height:190px;display:grid;grid-template-columns:50px 1fr 88px;align-items:start;padding-top:24px;position:relative}
.reference-rsvp>header>button{position:static!important;width:48px;height:48px;border:1px solid #e2cdb1!important;border-radius:50%;background:#fffaf2e8!important;color:#96631d!important;box-shadow:0 7px 18px #5e3a1d24;font-size:31px;backdrop-filter:blur(8px)}
.reference-rsvp>header>div{text-align:center;padding-top:0}.reference-rsvp>header h2{margin:0;font:600 clamp(50px,14vw,67px)/.86 'Cormorant Garamond',serif;color:var(--rsvp-green);letter-spacing:.11em}.reference-rsvp>header .ornament{margin:10px 0 5px;color:var(--rsvp-gold);font-size:16px}.reference-rsvp>header p{font:500 16px/1.35 'Cormorant Garamond',serif;color:#354a43;margin:8px auto;max-width:245px}
.rsvp-monogram{width:84px;height:106px;border:1px solid #d4a14f;border-radius:50%;display:grid!important;place-items:center;color:#b77c24;font:600 35px/.8 'Cormorant Garamond',serif;background:#fffaf2bd;box-shadow:0 8px 24px #6f491a1c;backdrop-filter:blur(5px)}.rsvp-monogram i{font-size:9px;font-style:normal;margin:-31px 0}
.reference-rsvp>form{padding:24px 20px 20px!important;border:1px solid #ead7c1!important;border-radius:22px!important;background:#fffdf9ed!important;box-shadow:0 14px 36px #5e3d2318!important;backdrop-filter:blur(8px)}
.reference-rsvp form>h2{margin:0 0 12px;font:600 24px/1 'Cormorant Garamond',serif;color:var(--rsvp-green)}
.rsvp-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px}.reference-rsvp .rsvp-grid label{margin:0;font-size:0;color:transparent;position:relative}.reference-rsvp .rsvp-grid label:before{position:absolute;left:15px;top:17px;color:var(--rsvp-gold);font:20px/1 serif;z-index:1}.reference-rsvp .rsvp-grid label:nth-child(1):before{content:'♙'}.reference-rsvp .rsvp-grid label:nth-child(2):before{content:'✉'}.reference-rsvp .rsvp-grid label:nth-child(3):before{content:'⌕';transform:rotate(-35deg)}.reference-rsvp .rsvp-grid label:nth-child(4):before{content:'◇'}
.reference-rsvp input:not([type=radio],[type=checkbox]),.reference-rsvp textarea{display:block;width:100%;min-height:54px;margin:0!important;padding:13px 12px 13px 43px!important;border:1px solid #e2cdb5!important;border-radius:13px!important;background:#fffdfaeb!important;color:#263b35;font:14px 'Cormorant Garamond',serif}.reference-rsvp textarea{padding:15px!important;resize:vertical}.reference-rsvp input:focus,.reference-rsvp textarea:focus{outline:2px solid #c8933e55;outline-offset:1px;border-color:#bd8737!important}
.attendance-cards,.meal-cards{display:grid!important;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0!important;padding:0;border:0}.attendance-cards legend,.meal-cards legend{grid-column:1/-1;font:600 23px/1.1 'Cormorant Garamond',serif!important;color:var(--rsvp-green);margin-bottom:4px}.attendance-cards label,.meal-cards label{padding:0!important;border:0!important;margin:0!important}.attendance-cards input,.meal-cards input{position:absolute;opacity:0}.attendance-cards span,.meal-cards span{min-height:108px;border:1px solid #e4cfb6;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:10px;font:600 13px/1.2 'Cormorant Garamond',serif;background:#fffdfa;box-shadow:0 6px 14px #62401f0c}.attendance-cards span i{width:31px;height:31px;border:2px solid #b78335;border-radius:50%;display:grid;place-items:center;font-style:normal;margin-bottom:10px;color:transparent}.attendance-cards span small{display:block;color:#b77c25;font-size:12px;margin-top:10px}.attendance-cards input:checked+span,.meal-cards input:checked+span{border-color:var(--rsvp-green);background:#f2f8f4;box-shadow:inset 0 0 0 1px var(--rsvp-green),0 7px 16px #063f3414}.attendance-cards input:checked+span i{background:#197358;border-color:#197358;color:#fff}.meal-cards span{min-height:70px;font-size:14px;flex-direction:row}.meal-cards legend small{display:block;font:12px 'Cormorant Garamond',serif;color:#756a61;margin-top:5px}
.guest-step{display:grid;grid-template-columns:1fr 205px;align-items:center;padding:13px 0;border-block:1px solid #eee1d3}.guest-step>label{margin:0!important;font:600 23px 'Cormorant Garamond',serif!important;color:var(--rsvp-green)}.guest-step>label small{display:block;font-size:12px;font-weight:400;color:#756a61}.stepper{display:grid;grid-template-columns:55px 1fr 55px;border:1px solid #e1cdb6;border-radius:11px;overflow:hidden;margin:0!important}.stepper button{min-height:51px;border:0;background:#fffaf4;color:var(--rsvp-gold);font-size:24px}.stepper button+input,.stepper input+button{border-left:1px solid #ead9c7!important}.stepper input{border:0!important;border-radius:0!important;text-align:center;font:600 23px 'Cormorant Garamond',serif!important;margin:0!important;padding:0!important;background:#fff!important}
.request-field{display:block;margin:18px 0 0!important;font:600 21px 'Cormorant Garamond',serif!important;color:var(--rsvp-green)}.request-field>small{font-size:14px;font-weight:400;color:#6f655e}.request-field textarea{margin-top:8px!important;min-height:86px}
.rsvp-switches{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.rsvp-switches>label{display:flex!important;align-items:center;justify-content:space-between;gap:8px;padding:14px!important;margin:0!important;border:1px solid #e5d5c4;border-radius:14px;background:#fffdfa;box-shadow:0 7px 17px #62401f0d}.rsvp-switches b,.rsvp-switches small{display:block}.rsvp-switches b{font:600 14px 'Cormorant Garamond',serif;color:var(--rsvp-green)}.rsvp-switches small{font:11px/1.25 'Cormorant Garamond',serif;color:#635e58;margin-top:5px}.rsvp-switches input{appearance:none;width:43px;height:24px;border-radius:15px;background:#d8cec5;position:relative;flex:0 0 auto}.rsvp-switches input:after{content:'';position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;left:3px;top:3px;transition:.2s}.rsvp-switches input:checked{background:var(--rsvp-green)}.rsvp-switches input:checked:after{transform:translateX(19px)}
.reference-rsvp .primary{min-height:58px;margin-top:20px;border:1px solid #c99542;border-radius:28px;background:linear-gradient(100deg,#075044,#06372f);color:#f5cf8e;font:600 21px 'Cormorant Garamond',serif;box-shadow:0 9px 22px #063c3230}.reference-rsvp .primary:disabled{opacity:.7;cursor:wait}.privacy-note{text-align:center;color:#5f625d;font:11px 'DM Sans',sans-serif;margin:10px 0 2px}.form-message{text-align:center;color:var(--rsvp-green);font-size:11px;min-height:15px;margin-bottom:0}
@media(max-width:390px){.reference-rsvp{padding-inline:14px!important}.reference-rsvp>header{grid-template-columns:45px 1fr 68px;height:177px}.reference-rsvp>header h2{font-size:46px}.reference-rsvp>header p{font-size:14px}.rsvp-monogram{width:66px;height:86px;font-size:28px}.rsvp-grid{grid-template-columns:1fr}.attendance-cards{grid-template-columns:1fr}.attendance-cards span{min-height:68px;flex-direction:row;gap:10px}.attendance-cards span i,.attendance-cards span small{margin:0}.meal-cards{grid-template-columns:1fr}.guest-step{grid-template-columns:1fr;gap:9px}.rsvp-switches{grid-template-columns:1fr}}
@media(prefers-reduced-motion:no-preference){.reference-rsvp.active>form{animation:rsvp-form-in .55s cubic-bezier(.2,.8,.2,1) both}@keyframes rsvp-form-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}}
