*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}body{background-color:#fdf6ee;color:#6b5744;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2{font-family:Playfair Display,Georgia,serif;color:#5a3e2b;font-weight:700}.wedding-page{max-width:700px;margin:0 auto;padding:0 1.5rem;text-align:center}.section-divider{width:60%;max-width:400px;height:1px;background-color:#c4956a;border:none;margin:3rem auto}.countdown{margin:.75rem 0 1.25rem}.countdown-units{display:flex;justify-content:center;gap:1.5rem}.countdown-unit{display:flex;flex-direction:column;align-items:center}.countdown-value{font-family:Playfair Display,Georgia,serif;font-size:1.4rem;font-weight:700;color:#5a3e2b;line-height:1}.countdown-label{font-size:.65rem;color:#8b7355;text-transform:uppercase;letter-spacing:1px;margin-top:.25rem}.hero{position:relative;padding:4rem 0 2rem;overflow:visible}.hero-label{font-size:.8rem;text-transform:uppercase;letter-spacing:3px;color:#8b7355;margin-bottom:.4rem}.hero h1{font-size:2.5rem;margin-bottom:1rem}.hero-date{font-weight:700;font-size:1.05rem;color:#5a3e2b;margin-bottom:.3rem}.hero-venue{font-size:1rem;color:#6b5744;margin-bottom:1.5rem}.rsvp-button{display:inline-block;padding:.65rem 2.5rem;background-color:#c4956a;color:#fff;text-decoration:none;border-radius:25px;font-size:.95rem;font-weight:500;transition:background-color .2s}.rsvp-button:hover{background-color:#b3845c}.falling-leaves{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:hidden}.falling-leaf{position:absolute;top:-80px;animation:leafFall linear infinite;will-change:transform,top}.leaf-sway-1{animation:leafFall linear infinite,leafSway1 ease-in-out 4.5s infinite}.leaf-sway-2{animation:leafFall linear infinite,leafSway2 ease-in-out 5.5s infinite}.leaf-sway-3{animation:leafFall linear infinite,leafSway3 ease-in-out 3.8s infinite}@keyframes leafFall{0%{top:-10%;opacity:0}3%{opacity:.85}80%{opacity:.85}to{top:105%;opacity:0}}@keyframes leafSway1{0%,to{transform:translate(0) rotate(0) rotateY(0)}25%{transform:translate(40px) rotate(25deg) rotateY(60deg)}50%{transform:translate(-15px) rotate(-15deg) rotateY(180deg)}75%{transform:translate(30px) rotate(20deg) rotateY(280deg)}}@keyframes leafSway2{0%,to{transform:translate(0) rotate(0) rotateY(0)}20%{transform:translate(-35px) rotate(-30deg) rotateY(90deg)}40%{transform:translate(20px) rotate(15deg) rotateY(200deg)}60%{transform:translate(-25px) rotate(-20deg) rotateY(280deg)}80%{transform:translate(15px) rotate(30deg) rotateY(340deg)}}@keyframes leafSway3{0%,to{transform:translate(0) rotate(0) rotateY(0)}30%{transform:translate(25px) rotate(35deg) rotateY(120deg)}50%{transform:translate(-30px) rotate(-10deg) rotateY(200deg)}70%{transform:translate(40px) rotate(-25deg) rotateY(300deg)}}.personal-note{padding:1rem}.couple-photos{display:flex;justify-content:center;gap:1rem;margin-bottom:1.5rem}.couple-photo{width:200px;height:260px;object-fit:cover;border-radius:12px;box-shadow:0 4px 16px #5a3e2b1f}.personal-note p{font-family:Playfair Display,Georgia,serif;font-style:italic;font-size:1.1rem;line-height:1.8;color:#6b5744;max-width:550px;margin:0 auto}.location{padding:1rem 0}.location h2{font-size:1.8rem;margin-bottom:1rem}.location-name{font-weight:700;color:#5a3e2b;font-size:1.05rem;margin-bottom:.25rem}.location-address{color:#6b5744;margin-bottom:1.5rem}.venue-photo{width:100%;max-width:500px;border-radius:8px;margin-bottom:1.5rem}.map-embed{width:100%;max-width:500px;height:250px;border:none;border-radius:8px}.faqs{padding:1rem 0}.faqs h2{font-size:1.8rem;margin-bottom:1.5rem}.faq-item{margin-bottom:1.25rem}.faq-question{font-weight:700;color:#5a3e2b}.faq-answer{color:#6b5744}.timeline{padding:1rem 0 4rem}.timeline h2{font-size:1.8rem;margin-bottom:1.5rem}.timeline-list{list-style:none;display:inline-block;text-align:left}.timeline-item{display:flex;align-items:baseline;gap:1.5rem;margin-bottom:.75rem}.timeline-time{font-weight:700;color:#5a3e2b;min-width:50px;text-align:right}.timeline-event{color:#6b5744}.rsvp{padding:1rem 0 2rem}.rsvp h2{font-size:1.8rem;margin-bottom:1.5rem}.rsvp-form{max-width:400px;margin:0 auto;text-align:left}.rsvp-field{margin-bottom:1rem;position:relative}.rsvp-field label{display:block;font-weight:600;color:#5a3e2b;margin-bottom:.3rem;font-size:.9rem}.rsvp-field input[type=text]{width:100%;padding:.6rem .8rem;border:1px solid #d4c4b0;border-radius:8px;font-size:.95rem;background:#fff;color:#5a3e2b;outline:none;transition:border-color .2s}.rsvp-field input[type=text]:focus{border-color:#c4956a}.rsvp-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #d4c4b0;border-top:none;border-radius:0 0 8px 8px;list-style:none;z-index:10;max-height:200px;overflow-y:auto;box-shadow:0 4px 12px #5a3e2b1a}.rsvp-dropdown li{padding:.5rem .8rem;cursor:pointer;font-size:.9rem;color:#5a3e2b;display:flex;justify-content:space-between}.rsvp-dropdown li:hover{background:#fdf6ee}.rsvp-dropdown-status{color:#8b7355;font-size:.8rem}.rsvp-toggle{display:flex;gap:.5rem}.rsvp-toggle-btn{flex:1;padding:.55rem;border:1px solid #d4c4b0;border-radius:8px;background:#fff;color:#6b5744;cursor:pointer;font-size:.9rem;transition:all .2s}.rsvp-toggle-btn.active{background:#c4956a;color:#fff;border-color:#c4956a}.rsvp-toggle-btn.decline{background:#b07a5a;border-color:#b07a5a}.rsvp-checkbox-label{display:flex!important;align-items:center;gap:.5rem;cursor:pointer;font-weight:400!important}.rsvp-checkbox-label input[type=checkbox]{accent-color:#c4956a;width:16px;height:16px}.rsvp-submit{display:block;width:auto;min-width:200px;margin-left:auto;margin-right:auto;padding:.7rem 2rem;background:#c4956a;color:#fff;border:none;border-radius:25px;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s;margin-top:.5rem}.rsvp-submit:hover{background:#b3845c}.rsvp-page-header{padding:2.5rem 0 0;text-align:center}.rsvp-page-header h1{font-size:2rem;margin-bottom:.5rem}.back-link{display:block;text-align:left;margin-bottom:1rem;color:#8b7355;text-decoration:none;font-size:.9rem;transition:color .2s}.back-link:hover{color:#5a3e2b}.rsvp-hint{color:#8b7355;font-size:.9rem;margin-bottom:.75rem}.rsvp-dropdown-empty{padding:.6rem .8rem;color:#8b7355;font-size:.85rem;font-style:italic}.rsvp-selected-name{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #d4c4b0;border-radius:8px;padding:.6rem .8rem;margin-bottom:1rem}.rsvp-selected-name span{font-weight:600;color:#5a3e2b;font-size:1.05rem}.rsvp-change-name{background:none;border:none;color:#c4956a;cursor:pointer;font-size:.85rem;text-decoration:underline}.rsvp-change-name:hover{color:#5a3e2b}.rsvp-success{background:#e8f5e9;color:#2e7d32;padding:.6rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.9rem;max-width:400px;margin-left:auto;margin-right:auto}@media(max-width:768px){.countdown-value{font-size:1.1rem}.hero h1{font-size:1.8rem}.falling-leaf:nth-child(n+12){display:none}.couple-photo{width:160px;height:210px}.personal-note p{font-size:1rem}.location h2,.faqs h2,.timeline h2{font-size:1.5rem}}@media(max-width:480px){.falling-leaf:nth-child(n+8){display:none}.hero h1{font-size:1.5rem}.hero{padding-top:2rem}}
