.rsvp{padding:0 0 130px;background:var(--paper);color:var(--ink)}
.rsvp-shell{width:100%;margin:0}
.rsvp-intro{position:relative;min-height:55vh;display:grid;align-content:end;padding:120px max(36px,calc((100% - 1180px)/2)) 60px;color:#fff;background:linear-gradient(90deg,rgba(8,12,12,.58),rgba(8,12,12,.08)),url('../images/hotel-garden.jpg') center/cover}
.rsvp-intro h1{font:500 clamp(62px,9vw,120px)/.8 var(--serif);letter-spacing:-.06em;margin:8px 0 0}.rsvp-intro h1 em{font-weight:400}.rsvp-intro>p:last-child{max-width:420px;margin:22px 0 0;color:#f0eee9;font:500 20px/1.5 var(--serif)}
.rsvp-panel{position:relative;width:min(970px,calc(100% - 60px));margin:72px auto 0;padding:clamp(30px,6vw,64px);background:var(--paper);box-shadow:0 18px 45px rgba(32,37,37,.12)}
.rsvp-panel h2{font:500 clamp(42px,7vw,62px)/.86 var(--serif);letter-spacing:-.06em;margin:0 0 21px}.rsvp-search-row{display:flex;gap:12px;align-items:end}.rsvp input,.rsvp textarea,.rsvp select{border:0;border-bottom:1px solid var(--stone);border-radius:0;background:transparent;padding:12px 0;width:100%;font:14px var(--sans)}.rsvp textarea{min-height:100px;resize:vertical}.rsvp input:focus,.rsvp textarea:focus,.rsvp select:focus{outline:2px solid var(--turquoise);outline-offset:4px}.rsvp-button{margin:0;white-space:nowrap;background:transparent;color:var(--ink);cursor:pointer}.rsvp-button:hover{background:var(--ink);color:#fff}.field-note,.wizard-copy{color:#5c605d;margin:13px 0 0}.rsvp-message{min-height:1.5em;color:#a24030;margin:16px 0 0}.household-list{margin-top:30px}.household-list>p{margin:0 0 13px}.household-button{width:100%;text-align:left;background:transparent;border:1px solid var(--stone);padding:18px;margin:7px 0;cursor:pointer;font:500 25px var(--serif)}.household-button:hover,.household-button:focus{border-color:var(--turquoise);outline:none;background:#eef8f7}.rsvp-progress{display:flex;align-items:center;gap:16px;font-size:10px;letter-spacing:.13em;text-transform:uppercase;margin-bottom:42px}.rsvp-progress>div{height:2px;flex:1;background:var(--stone)}.rsvp-progress i{display:block;height:100%;width:33.3%;background:var(--turquoise);transition:width .25s}.guest-questions{display:grid;gap:24px;margin-top:30px}.guest-question{border-top:1px solid var(--stone);padding-top:22px}.guest-question:first-child{border:0;padding-top:0}.guest-question h3,.detail-guest h3{font:500 31px var(--serif);margin:0 0 12px}.event-question{padding:18px;margin-top:12px;background:var(--cream)}.event-question h4,.detail-event h4{font:500 24px var(--serif);margin:0}.event-question p{font-size:12px;color:#656966}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.choice-card{position:relative;border:1px solid var(--stone);padding:18px;cursor:pointer;text-transform:none;letter-spacing:normal;font-size:inherit;margin:0;background:var(--paper)}.choice-card input{position:absolute;opacity:0}.choice-card span{display:grid;gap:5px}.choice-card b{font:500 25px/.92 var(--serif)}.choice-card small{color:#666b68}.choice-card:has(input:checked){border-color:var(--turquoise);background:#eef8f7;box-shadow:inset 0 0 0 1px var(--turquoise)}.custom-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:31px}.full-width,.detail-guest{grid-column:1/-1}.detail-guest{border-top:1px solid var(--stone);padding-top:22px}.detail-event{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:17px}.detail-event h4{grid-column:1/-1}.check-field{display:flex;align-items:center;gap:8px;text-transform:none;letter-spacing:0;font-size:13px}.check-field input{width:auto}.wizard-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:40px}.wizard-actions .button{margin:0;cursor:pointer}.button-quiet{background:transparent}.button-quiet:hover{background:var(--cream);color:var(--ink)}.review{background:var(--cream);padding:20px}.review dl{display:grid;grid-template-columns:130px 1fr;gap:10px;margin:0}.review dt{font-size:10px;text-transform:uppercase;letter-spacing:.12em}.review dd{margin:0}.rsvp-thanks{text-align:center;padding:80px 30px}.rsvp-thanks p:last-child{color:#5e625f}
@media(max-width:600px){.rsvp{padding-bottom:70px}.rsvp-intro{min-height:48vh;padding:108px 24px 45px}.rsvp-panel{width:calc(100% - 36px)}.rsvp-search-row,.choice-grid,.custom-fields,.detail-event{grid-template-columns:1fr;display:grid}.detail-event h4{grid-column:auto}.rsvp-search-row .button{width:100%;justify-content:space-between}.wizard-actions{justify-content:stretch}.wizard-actions .button{flex:1;justify-content:center}.rsvp-panel{padding:29px 22px;margin-top:44px}.review dl{grid-template-columns:1fr}.review dt{margin-top:8px}}
.wizard-actions [hidden]{display:none!important}
