:root{color:#1d1d1d;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;font-family:Courier New,Courier,monospace;font-size:17px;line-height:1.45}#root{min-height:100vh}body{background:#fff;margin:0}.rsvp-page{isolation:isolate;box-sizing:border-box;background:#fff;justify-content:center;align-items:center;width:100%;min-height:100vh;padding:72px 24px;display:flex;position:relative}.rsvp-layout{grid-template-columns:minmax(0,640px) minmax(360px,560px);align-items:start;gap:clamp(96px,12vw,220px);width:min(1280px,100%);display:grid}.rsvp-sheet{box-sizing:border-box;width:100%;padding:0}.poster-panel{z-index:10;width:min(460px,32vw);position:fixed;top:72px;right:max(24px,50vw - 616px)}.poster-figure{margin:0}.poster-trigger{cursor:zoom-in;background:0 0;border:0;width:100%;padding:0;display:block}.poster-trigger:focus-visible{outline-offset:4px;outline:2px solid #a51623}.poster-image{image-rendering:auto;border-radius:8px;width:100%;height:auto;display:block;box-shadow:0 10px 24px #00000024}.poster-lightbox{z-index:1000;background:#000000d1;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.poster-lightbox-image{image-rendering:auto;border-radius:8px;width:auto;max-width:calc(100vw - 48px);height:auto;max-height:calc(100vh - 48px);display:block;box-shadow:0 14px 36px #0006}.poster-lightbox-close{color:#fff;font:inherit;cursor:pointer;background:#0006;border:1px solid #fff;border-radius:6px;padding:8px 12px;position:absolute;top:20px;right:20px}.poster-lightbox-close:hover{background:#ffffff1f}.poster-lightbox-close:focus-visible{outline-offset:2px;outline:2px solid #fff}.event-title{color:#141414;margin:0;font-size:1.05rem;font-weight:500}.event-meta{color:#3f3f3f;margin:8px 0 0;font-size:1rem}.no-wrap{white-space:nowrap}.event-quote{margin-bottom:24px}.event-meta-last{margin-bottom:28px}.rsvp-sheet h1{color:#111;margin:0 0 10px;font-family:Times New Roman,Brush Script MT,serif;font-size:clamp(2rem,4vw,2.6rem);font-style:italic;font-weight:500}.mobile-header-logo{display:none}.intro{color:#444;max-width:44ch;margin-top:36px;margin-bottom:34px}.intro p{margin:0 0 .9rem}.intro p:last-child{margin-bottom:0}.rsvp-form{gap:8px;margin-top:18px;display:grid}.rsvp-form label{color:#1d1d1d;font-size:1rem;font-weight:400}.rsvp-form input,.rsvp-form button{font:inherit}.rsvp-form input[type=text]{color:#161616;background:0 0;border:0;border-bottom:1px solid #7a7a7a;border-radius:0;margin-bottom:14px;padding:10px 0 8px}.rsvp-form button{color:#a51623;cursor:pointer;text-align:left;background:0 0;border:0;margin-top:20px;padding:0;font-family:Times New Roman,Brush Script MT,serif;font-size:1.9rem;font-style:italic}.rsvp-form button:hover{text-decoration:underline}.rsvp-form button:focus-visible,.rsvp-form input:focus-visible{outline-offset:2px;outline:2px solid #a51623}.attendance-group{border:0;margin:2px 0 12px;padding:0}.attendance-group legend{color:#1d1d1d;margin-bottom:8px;padding:0;font-size:1rem}.checkbox-row{cursor:pointer;align-items:center;gap:10px;margin-bottom:8px;display:flex}.checkbox-row span{color:#1d1d1d;text-transform:none;letter-spacing:0;font-size:1rem;font-weight:400}.checkbox-row input[type=checkbox]{accent-color:#a51623;width:16px;height:16px;margin:0}.status{color:#2f2f2f;margin-top:8px;font-size:.94rem}.latest-entry{color:#3f3f3f;margin:6px 0 0;font-size:.92rem}@media (width<=640px){.rsvp-page{background:0 0;align-items:flex-start;min-height:100dvh;padding:0;overflow:visible}.rsvp-page:before{content:"";z-index:0;background-image:var(--poster-url);filter:brightness(.94)contrast(1.04)saturate(1.08);pointer-events:none;background-color:#fff;background-position:50%;background-repeat:no-repeat;background-size:contain;position:fixed;inset:0}.rsvp-page:after{content:"";z-index:1;pointer-events:none;background:radial-gradient(circle,#0c0c0c08,#0c0c0c42);position:fixed;inset:0}.rsvp-layout{z-index:2;grid-template-columns:1fr;gap:24px;width:100%;min-height:auto;padding-bottom:clamp(420px,90vh,900px);position:relative}.poster-panel{display:none}.rsvp-sheet{-webkit-backdrop-filter:blur(.5px);backdrop-filter:blur(.5px);width:100%;min-height:auto;box-shadow:none;background:#ffffffe6;border-radius:0;order:1;margin:0;padding:28px 18px 34px}.rsvp-sheet h1,.event-title,.event-meta,.intro,.rsvp-form label,.attendance-group legend,.checkbox-row span,.status,.latest-entry{color:#151515}.rsvp-form input[type=text]{background:#ffffff38;padding-left:4px;padding-right:4px}.rsvp-sheet h1{font-size:2rem}.mobile-header-logo{width:min(220px,70vw);height:auto;margin:8px auto 18px;display:block}.poster-lightbox{display:none}}
