:root{--wpa-bg:#F5F0E8;--wpa-bg-alt:#F5F0E8;--wpa-text:#1A1510;--wpa-text-muted:#7A7A7A;--wpa-accent:#C6A769;--wpa-accent-contrast:#0B0B0B;--wpa-surface:#FFFFFF;--wpa-border:rgba(198, 167, 105, 0.35);--wpa-font-heading:'Playfair Display', Georgia, 'Times New Roman', serif;--wpa-font-script:'Playfair Display', Georgia, serif;--wpa-font-body:'Montserrat', -apple-system, BlinkMacSystemFont, sans-serif;--wpa-section-max-width:720px;--wpa-radius:4px}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--wpa-bg);color:var(--wpa-text);font-family:var(--wpa-font-body);font-size:16px;line-height:1.6;-webkit-text-size-adjust:100%}img{max-width:100%;display:block}.wpa-root{overflow-x:hidden;background:var(--wpa-bg);color:var(--wpa-text);min-height:100vh;padding-bottom:90px}.wpa-section{max-width:var(--wpa-section-max-width);margin:0 auto;padding:3.5rem 1.5rem;text-align:center}.wpa-section-title{font-family:var(--wpa-font-heading);font-size:1.5rem;letter-spacing:.04em;margin-bottom:1.5rem}.wpa-opening{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--wpa-bg-alt);color:var(--wpa-text)}.wpa-opening-names{font-family:var(--wpa-font-script);font-size:clamp(2rem, 8vw, 3.5rem);margin:0 0 2.5rem}.wpa-btn{display:inline-block;border:1px solid var(--wpa-accent);background:#fff0;color:inherit;font-family:var(--wpa-font-body);font-size:.9rem;letter-spacing:.08em;text-transform:uppercase;padding:.9rem 2.2rem;border-radius:var(--wpa-radius);cursor:pointer;transition:background 0.25s ease,color 0.25s ease;text-decoration:none}.wpa-btn:hover{background:var(--wpa-accent);color:var(--wpa-accent-contrast)}.wpa-btn-primary{background:var(--wpa-accent);color:var(--wpa-accent-contrast)}.wpa-btn-primary:hover{filter:brightness(1.1)}.wpa-btn-secondary{border-color:var(--wpa-text-muted);align-self:flex-start}.wpa-btn-secondary:hover{background:var(--wpa-text-muted);color:var(--wpa-surface)}.wpa-content{opacity:0;transform:translateY(12px);transition:opacity 0.6s ease,transform 0.6s ease}.wpa-content.wpa-visible{opacity:1;transform:translateY(0)}.wpa-hero-photo-frame{margin:0 auto 2rem;max-width:420px}.wpa-hero-names{font-family:var(--wpa-font-script);font-size:clamp(1.8rem, 6vw, 2.8rem);margin:.5rem 0}.wpa-hero-date{color:var(--wpa-text-muted);letter-spacing:.05em}.wpa-divider{display:flex;align-items:center;justify-content:center;margin:0 auto .5rem}.wpa-divider svg{display:block}.wpa-name-ribbon{position:relative;display:inline-block}.wpa-story-text,.wpa-final-text{font-size:1.05rem}.wpa-family-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1.5rem}.wpa-family-role{text-transform:uppercase;font-size:.75rem;letter-spacing:.1em;color:var(--wpa-accent);margin-bottom:.25rem}.wpa-family-name{font-family:var(--wpa-font-heading);font-size:1.1rem;margin:0}.wpa-countdown-grid{display:flex;justify-content:center;gap:1.25rem;margin-bottom:2rem;flex-wrap:wrap}.wpa-countdown-unit{min-width:64px}.wpa-countdown-value{display:block;font-family:var(--wpa-font-heading);font-size:2rem;color:var(--wpa-accent)}.wpa-countdown-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--wpa-text-muted)}.wpa-program-item{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--wpa-border)}.wpa-program-item:last-child{border-bottom:none}.wpa-program-label{font-family:var(--wpa-font-heading);font-size:1.2rem;margin:0 0 .25rem}.wpa-program-time{color:var(--wpa-accent);font-weight:600;margin:0 0 .25rem}.wpa-program-location{color:var(--wpa-text-muted);margin:0 0 1rem}.wpa-program-map{position:relative;padding-top:56%;border-radius:var(--wpa-radius);overflow:hidden}.wpa-program-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.wpa-gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.wpa-gallery-item img{width:100%;height:220px;object-fit:cover;border-radius:var(--wpa-radius)}.wpa-rsvp-form{text-align:left;display:flex;flex-direction:column;gap:1.1rem}.wpa-form-field{display:flex;flex-direction:column;gap:.4rem;font-size:.85rem}.wpa-form-field input,.wpa-form-field textarea{font-family:inherit;font-size:1rem;padding:.7rem .9rem;border:1px solid var(--wpa-border);border-radius:var(--wpa-radius);background:var(--wpa-surface);color:var(--wpa-text)}.wpa-form-honeypot{position:absolute;left:-9999px}.wpa-rsvp-events{border:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1rem}.wpa-rsvp-event{padding:1rem;border:1px solid var(--wpa-border);border-radius:var(--wpa-radius)}.wpa-rsvp-event-label{font-weight:600;margin:0 0 .5rem}.wpa-rsvp-event-choice{display:flex;gap:1.5rem;margin-bottom:.5rem;font-size:.9rem}.wpa-rsvp-guest-count{display:flex;align-items:center;gap:.5rem;font-size:.85rem;max-width:160px}.wpa-rsvp-guest-count input{width:70px;padding:.4rem}.wpa-form-consent{display:flex;gap:.6rem;font-size:.8rem;color:var(--wpa-text-muted);align-items:flex-start}.wpa-rsvp-feedback{min-height:1.2rem;font-size:.9rem}.wpa-rsvp-feedback.is-success{color:#2E7D32}.wpa-rsvp-feedback.is-error{color:#C62828}.wpa-rsvp-closed{color:var(--wpa-text-muted)}.wpa-rsvp-demo-notice{color:var(--wpa-text-muted);border:1px dashed var(--wpa-border);border-radius:var(--wpa-radius);padding:1rem 1.25rem}.wpa-rsvp-members{display:flex;flex-direction:column;gap:.5rem}.wpa-rsvp-members-label{font-weight:600;font-size:.85rem}.wpa-rsvp-members-hint{font-size:.8rem;color:var(--wpa-text-muted);margin:0}.wpa-rsvp-member-row{display:flex;gap:.5rem}.wpa-rsvp-member-row input{flex:1;font-family:inherit;font-size:1rem;padding:.6rem .8rem;border:1px solid var(--wpa-border);border-radius:var(--wpa-radius);background:var(--wpa-surface);color:var(--wpa-text)}.wpa-rsvp-member-remove{background:none;border:none;color:#C62828;font-size:1.3rem;cursor:pointer;padding:0 .5rem}@media (min-width:640px){.wpa-gallery-grid{grid-template-columns:repeat(3,1fr)}}.wpa-public-cta{position:fixed;left:0;right:0;bottom:90px;z-index:40;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.6rem .9rem;padding:.75rem 1rem;background:var(--wpa-surface);border-top:1px solid var(--wpa-border);box-shadow:0 -4px 18px rgb(0 0 0 / .12)}.wpa-public-cta-label{font-size:.85rem;color:var(--wpa-text-muted)}.wpa-public-cta-btn{display:inline-block;padding:.6rem 1.4rem;border-radius:var(--wpa-radius);border:1px solid var(--wpa-accent);background:#fff0;color:var(--wpa-text);font-family:var(--wpa-font-body);font-size:.85rem;letter-spacing:.03em;cursor:pointer;text-decoration:none}.wpa-public-cta-primary{background:var(--wpa-accent);color:var(--wpa-accent-contrast)}.wpa-public-cta-btn:disabled{opacity:.6;cursor:default}.wpa-public-cta-spacer{height:90px}