.rsvp-section{display:grid;grid-template-columns:1.06fr 1fr;gap:clamp(28px,6vw,88px);padding-block:90px;border-top:1px solid #b899663b;scroll-margin-top:24px}.rsvp-intro{align-self:center}.rsvp-intro h2{font:clamp(32px,3.3vw,49px)/1.16 Georgia,serif;color:#521a22;margin:18px 0 24px}.rsvp-intro h2 em{color:#947044;font-weight:400}.rsvp-intro>p:not(.eyebrow){max-width:480px;font-size:16px;line-height:1.8;color:#68574e}.rsvp-intro .rsvp-note{font-size:13px!important}.rsvp-event{display:grid;gap:8px;padding:22px 0;margin:24px 0;border-top:1px solid #b8996655;border-bottom:1px solid #b8996655;color:#54212a}.rsvp-event span:first-child{font-size:11px;letter-spacing:2px;color:#806039}.rsvp-event span:last-child{font-size:13px}.rsvp-form{background:linear-gradient(135deg,#24211c,#111310 75%);color:#f4e6cb;padding:clamp(23px,4vw,44px);border:1px solid #bba16c;border-radius:3px;box-shadow:0 20px 55px #4827191c;min-width:0}.rsvp-form-kicker{font:11px/1.5 Arial,sans-serif;letter-spacing:3px;color:#cbae74;margin:0 0 24px}.rsvp-form label,.rsvp-form legend{font-size:14px;line-height:1.5}.rsvp-form>label,.rsvp-guests>label{display:block;margin-bottom:9px}.rsvp-form input[type=text],.rsvp-form input[type=number]{display:block;box-sizing:border-box;border:1px solid #89764f;border-radius:3px;background:#fffaf0;color:#23231e;padding:13px 15px;width:100%;font:16px/1.4 Arial,sans-serif}.rsvp-form fieldset{border:0;padding:0;margin:25px 0}.rsvp-form legend{margin-bottom:9px}.rsvp-choice{display:flex;align-items:center;gap:12px;min-height:46px;cursor:pointer}.rsvp-choice input{width:19px;height:19px;accent-color:#d7b777;flex-shrink:0}.rsvp-guests small{display:block;color:#d0c1a8;line-height:1.5;margin-top:8px}.rsvp-gold-button{border:1px solid #e6d0a0;background:linear-gradient(115deg,#bea06a,#f0dcb0,#c1a16b);color:#171812;min-height:49px;padding:13px 24px;border-radius:3px;font:600 14px/1.5 Arial,sans-serif;cursor:pointer;box-shadow:0 4px 20px #0002;transition:filter .2s}.rsvp-gold-button:hover{filter:brightness(1.09)}.rsvp-gold-button:disabled{opacity:.65;cursor:wait}.rsvp-form .rsvp-gold-button{width:100%}.rsvp-form .rsvp-privacy{font-size:12px;line-height:1.7;color:#c4b9a5;margin:18px 0 0}.rsvp-error{color:#ffbdab;font:14px/1.5 Arial,sans-serif;min-height:0}.rsvp-error:empty{display:none}.rsvp-form .rsvp-error{margin-block:14px}.rsvp-section :focus-visible,.rsvp-modal :focus-visible{outline:3px solid #caa963;outline-offset:4px}.rsvp-modal{box-sizing:border-box;border:1px solid #b39356;border-radius:8px;background:#141612;color:#f2e5c8;padding:0;width:min(960px,calc(100% - 24px));max-height:92dvh;max-width:calc(100% - 24px);box-shadow:0 25px 150px #0009}.rsvp-modal::backdrop{background:#080a09d1;backdrop-filter:blur(9px)}.rsvp-modal-content{padding:clamp(22px,4vw,42px);text-align:center;position:relative}.rsvp-modal .rsvp-form-kicker{margin:5px 30px 12px}.rsvp-modal h2{font:clamp(26px,4vw,38px)/1.2 Georgia,serif;margin:0 30px 13px}.rsvp-confirmation{font:14px/1.6 Arial,sans-serif;color:#d2c5ac;margin:0 0 22px}.rsvp-close{position:absolute;top:8px;right:8px;width:44px;height:44px;border:0;background:transparent;color:#e5cda0;font:30px Arial;cursor:pointer}.rsvp-ticket{position:relative;border-radius:8px;overflow:hidden;box-shadow:0 12px 35px #0008;isolation:isolate}.rsvp-ticket svg{display:block;width:100%;height:auto}.rsvp-ticket:after{content:'';position:absolute;inset:-100%;pointer-events:none;background:linear-gradient(110deg,transparent 44%,#ffe8b315 49%,transparent 54%);animation:rsvp-foil 5s ease-in-out 1}.rsvp-download{margin-top:24px}.rsvp-download p{font:italic 16px Georgia,serif;color:#d9c6a1;margin:13px 0 0}.rsvp-declined{padding:28px 12px;line-height:1.8;border-block:1px solid #c3a26766}.rsvp-modal[open]{animation:rsvp-arrive .4s ease-out}@keyframes rsvp-arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes rsvp-foil{from{transform:translateX(-40%)}to{transform:translateX(40%)}}@media(max-width:760px){.rsvp-section{grid-template-columns:1fr;padding-block:55px}.rsvp-intro>p:not(.eyebrow){max-width:none}.rsvp-form{padding:25px}.rsvp-modal-content{padding:22px 12px}.rsvp-download .rsvp-gold-button{width:100%}}@media(prefers-reduced-motion:reduce){.rsvp-ticket:after,.rsvp-modal[open]{animation:none}}

.rsvp-modal{position:fixed;inset:0;margin:auto;overscroll-behavior:contain}@keyframes rsvp-arrive{from{opacity:0}to{opacity:1}}

.party-music-section{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding-block:65px;border-top:1px solid #b8996644;align-items:center;scroll-margin-top:24px}.party-music-copy h2{font:clamp(32px,3.5vw,48px)/1.18 Georgia,serif;color:#521a22;margin:18px 0 24px}.party-music-copy h2 em{color:#947044;font-weight:400}.party-music-copy>p:last-child{color:#68574e;line-height:1.9;max-width:460px}.party-music-card{text-align:center;padding:35px;background:linear-gradient(135deg,#252b21,#111610);border:1px solid #b89b64;color:#eadbbd;border-radius:4px;min-width:0}.party-music-note{font:52px Georgia,serif;color:#dfc383}.party-music-date{font:11px/1.6 Arial,sans-serif;letter-spacing:2px;margin:15px 0}.party-music-card h3{font:29px/1.25 Georgia,serif;margin:12px 0}.party-music-card>p:not(.party-music-date){font-size:14px;line-height:1.8;color:#d6ccb8}.party-music-button{display:inline-flex;align-items:center;justify-content:center;margin:16px 0;text-align:center}.party-music-card small{display:block;font-size:12px;line-height:1.6;color:#c5b79c}.party-music-section :focus-visible{outline:3px solid #b99a60;outline-offset:4px}@media(max-width:760px){.party-music-section{grid-template-columns:1fr;gap:25px;padding-block:48px}.party-music-card{padding:25px}.party-music-button{width:100%;box-sizing:border-box}}
