.app{width:100vw;height:100dvh;overflow:hidden}.envelope-container-3d{perspective:1200px;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;overflow:hidden}.envelope-wrapper{width:620px;height:calc(min(100vw - 2rem,620px)/1.73184);transform-style:preserve-3d;clip-path:inset(-200% 0 0);margin:1rem;position:relative}.layer{object-fit:contain;pointer-events:none;will-change:transform;width:100%;height:auto;position:absolute;top:0;left:0}.back{z-index:1}.letter-container{z-index:2;transform-origin:top;transform-style:preserve-3d;justify-content:center;align-items:flex-start;margin:0 auto;display:flex;position:absolute;top:0;left:0;right:0}.dummy-letter{width:100%;box-shadow:none;text-align:center;color:#333;backface-visibility:hidden;background:0 0;padding:0;font-family:Georgia,serif;position:relative;overflow:hidden}.pocket{z-index:3}.flap-container{z-index:4;transform-style:preserve-3d;transform-origin:top}.flap-img{object-fit:contain;width:100%;height:auto;display:block}.wax-img{z-index:10;width:25%;height:auto;transform-style:preserve-3d;position:absolute;bottom:10%;left:50%;transform:translate(-50%)}.wax-on-letter{z-index:20;width:60px;height:auto;position:absolute;top:20px;left:20px}.wedding-fab{cursor:pointer;z-index:1000;border:none;border-radius:50%;outline:none;justify-content:center;align-items:center;width:56px;height:56px;padding:0;transition:background .3s,box-shadow .3s;display:flex;position:absolute;bottom:20px;right:20px}.wedding-fab.is-front{box-shadow:none;background:0 0}.wedding-fab.is-flipped{-webkit-backdrop-filter:blur(6px);background:#ffffffd9;box-shadow:0 4px 12px #8b451326}.wedding-fab.is-flipped:hover{background:#fffffff2;box-shadow:0 6px 16px #8b451340}.fab-icon{object-fit:contain;width:100%;height:100%;display:block}@media (width<=480px){.wedding-fab{width:48px;height:48px;bottom:15px;right:15px}}._externalWrapper_1fv4p_2{width:100%;min-height:100%;container-type:inline-size}._wrapper_1fv4p_8{width:100%;min-height:100%;display:block;position:relative}._backgroundLayer_1fv4p_17{pointer-events:none;z-index:0;flex-direction:column;display:flex;position:absolute;inset:0}._top_1fv4p_26{aspect-ratio:794/111;background-position:top;background-repeat:no-repeat;background-size:100% 100%;flex-shrink:0}._center_1fv4p_34{z-index:1;background-position:50%;background-repeat:repeat-y;background-size:100%;flex:1;width:100%;margin-top:-15px;margin-bottom:-15px;position:relative;-webkit-mask-image:linear-gradient(#0000 0,#000 15px calc(100% - 15px),#0000 100%);mask-image:linear-gradient(#0000 0,#000 15px calc(100% - 15px),#0000 100%)}._bottom_1fv4p_61{aspect-ratio:794/111;background-position:bottom;background-repeat:no-repeat;background-size:100% 100%;flex-shrink:0}._contentLayer_1fv4p_70{z-index:2;flex-direction:column;width:100%;height:100%;display:flex;position:relative;overflow:visible}.letter-content{background:0 0;justify-content:center;align-items:center;width:100%;height:100%;padding:1rem;display:flex;overflow-y:hidden}.flip-card{aspect-ratio:2/3;text-align:center;width:100%;max-width:620px;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;perspective:1000px;transition:transform .8s;position:relative}.flip-card.flipped .flip-card-inner{transform:rotateY(180deg)}.flip-card-inner{text-align:center;width:100%;height:100%;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;transition:transform .8s;position:relative}.flip-card-front,.flip-card-back{backface-visibility:hidden;background-color:#fffef7;border-radius:12px;width:100%;height:100%;position:absolute;top:0;left:0;overflow:hidden;-webkit-transform:translate(0,0);box-shadow:0 4px 15px #0000001a}.flip-card-front{color:#000;z-index:2;background-position:50%;background-size:cover;transform:rotateY(0)}.flip-card:not(.flipped) .flip-card-front{pointer-events:auto}.flip-card:not(.flipped) .flip-card-back,.flip-card.flipped .flip-card-front{pointer-events:none}.flip-card.flipped .flip-card-back{pointer-events:auto}.front-content{z-index:1;flex-direction:column;align-items:center;width:100%;height:100%;padding:0 20px;display:flex;position:absolute;top:0;left:0}.spacer-top{flex-shrink:0;width:100%;height:15%}.text-names{color:#4a4a4a;margin-bottom:.5rem;font-family:Indie Flower,cursive;font-size:2.2rem;line-height:1.1;transform:rotate(-2deg)}.text-wit{color:#555;max-width:90%;margin-bottom:.8rem;font-family:Quicksand,sans-serif;font-size:.9rem;font-weight:500;line-height:1.3}.text-date{color:#d2691e;margin-bottom:.5rem;font-family:Pacifico,cursive;font-size:1.3rem}.text-details{color:#333;max-width:95%;margin-bottom:.5rem;font-family:Quicksand,sans-serif;font-size:.85rem;line-height:1.4}.text-dress{color:#8b4513;margin-top:.5rem;font-family:Caveat,cursive;font-size:1.2rem}.wax-seal{z-index:30;pointer-events:none;width:36%;max-width:90px;position:absolute;bottom:1rem;left:1rem}.flip-card-back{z-index:1;--webkit-overflow-scrolling:touch;background-position:50%;background-size:cover;flex-direction:column;display:flex;overflow-y:auto;transform:rotateY(180deg)}.letter-paper{text-align:left;background:linear-gradient(#fffffff2 0%,#ffffffb3 40%,#ffffff4d 100%);width:100%;min-height:100%;padding:3.5rem 1.5rem 1.5rem}.letter-title{text-align:center;color:#8b7355;margin-bottom:1.5rem;font-family:Georgia,serif;font-size:1.8rem}.letter-body p{color:#333;text-align:justify;margin-bottom:.8rem;font-size:1rem;line-height:1.6}.card-grid{grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1rem;padding:1rem .5rem;display:grid}.info-card{aspect-ratio:3.58;cursor:pointer;background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:75px;align-items:center;gap:.5rem;padding:0 .8rem;transition:transform .2s,box-shadow .2s;display:flex;position:relative}.info-card:hover{transform:translateY(-3px);box-shadow:0 4px 12px #00000040}.info-card:active{transform:translateY(0)}.card-icon{object-fit:contain;flex-shrink:0;height:100%;max-height:70px}.card-title{color:#4a4a4a;text-align:left;flex:1;margin:0;font-family:Quicksand,sans-serif;font-size:.9rem;font-weight:700}.info-card.rsvp-card{flex-direction:column;grid-column:1/-1;justify-content:center;gap:.3rem;padding:.8rem 1rem}.rsvp-card .card-title{text-align:center;font-size:1.1rem}.rsvp-card-status{background:#f9f7f1cc;border:1px solid #c9a581;border-radius:20px;justify-content:center;align-items:center;gap:.4rem;margin-top:.3rem;padding:.4rem .8rem;display:flex}.rsvp-card-emoji{font-size:1.1rem;line-height:1}.rsvp-card-text{color:#8b7355;font-family:Caveat,cursive;font-size:.95rem;font-weight:600;line-height:1.2}.card-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background:#000000b3;justify-content:center;align-items:center;width:100vw;height:100vh;padding:1rem;display:flex;position:fixed;top:0;left:0}.card-modal-content{--webkit-overflow-scrolling:touch;width:100%;max-width:600px;max-height:90vh;position:relative;overflow-y:auto}.close-modal-btn{color:#8b7355;cursor:pointer;z-index:10;background:#8b735526;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.3rem;transition:all .2s;display:flex;position:absolute;top:.8rem;right:.8rem}.close-modal-btn:hover{background:#8b73554d;transform:rotate(90deg)}.expanded-content{color:#333;font-family:Quicksand,sans-serif}.expanded-content h2{color:#8b7355;text-align:center;margin-bottom:1.5rem;font-family:Georgia,serif;font-size:1.8rem}.expanded-content h3{color:#8b7355;margin-top:1.5rem;margin-bottom:1rem;font-size:1.2rem}.expanded-content p{color:#444;margin-bottom:1rem;font-size:1rem;line-height:1.7}.expanded-content .letter-body p{text-align:justify}.expanded-content .whatsapp-section{text-align:center;margin-top:2rem}.expanded-content .whatsapp-buttons{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:1rem;display:flex}.expanded-content .card-header{align-items:center;gap:15px;margin-bottom:15px;display:flex}.expanded-content .card-header h2{margin:0}.rsvp-modal-title{color:#8b7355;text-align:center;margin-bottom:1.5rem;font-family:Caveat,cursive;font-size:1.6rem;line-height:1.3}.rsvp-summary-page{text-align:center;padding:1rem 0}.summary-status{flex-direction:column;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.summary-emoji{font-size:3rem;line-height:1}.summary-text{color:#333;margin:0;font-family:Quicksand,sans-serif;font-size:1.1rem;font-weight:500}.guests-list-editable{background:0 0;border:none;border-radius:0;margin-top:1.5rem;padding:0}.guests-list-editable h3{color:#8b7355;margin-bottom:1rem;font-family:Georgia,serif;font-size:1.1rem}.guests-list-editable ul{margin:0;padding:0;list-style:none}.guests-list-editable li{border-bottom:none;justify-content:space-between;align-items:center;padding:.75rem 0;transition:all .3s;display:flex}.guests-list-editable li:last-child{border-bottom:none}.guest-name{color:#333;flex:1;align-items:center;gap:.5rem;font-size:1rem;font-weight:500;transition:all .3s;display:flex}.guest-name .badge{color:#8b5a00;background:#ffd89b;border-radius:10px;padding:.2rem .5rem;font-size:.7rem;font-weight:700}.guest-hint{color:#666;text-align:left;margin-bottom:.75rem;font-size:.85rem;font-style:italic}.guest-dietary-label{color:#d35400;margin-top:.25rem;font-size:.85rem;font-style:italic;display:block}.guest-textarea{resize:vertical;box-sizing:border-box;color:#333;background:0 0;border:1px solid #c9a581;border-radius:4px;outline:none;width:100%;min-height:60px;padding:.5rem;font-family:Quicksand,sans-serif;font-size:.9rem;transition:border-color .2s}.guest-textarea:focus{border-color:#8b7355}.guest-actions{align-items:center;gap:.5rem;display:flex}.guest-action-btn{cursor:pointer;background:0 0;border:none;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:1rem;transition:all .2s;display:flex}.guest-action-btn:hover{background:0 0;transform:scale(1.1)}.guest-action-btn:active{transform:scale(.95)}.guest-action-btn.edit,.guest-action-btn.exclude{color:#8b7355}.guest-action-btn.save{color:#2e7d32;font-size:1.2rem}.guest-action-btn.cancel{color:#c62828}.guest-edit-inputs{flex-direction:column;flex:1;gap:.5rem;display:flex}.guest-input{color:#333;background:0 0;border:none;border-bottom:1px solid #c9a581;outline:none;flex:1;min-width:0;padding:.3rem 0;font-family:Quicksand,sans-serif;font-size:1rem;font-weight:500;transition:border-color .2s}.guest-input:focus{border-bottom-color:#8b7355}.guest-input::placeholder{color:#999;font-weight:400}.guest-excluded{opacity:.5}.guest-excluded .guest-name{color:#999;text-decoration:line-through}.guest-excluded .guest-action-btn{color:#999}.rsvp-next-btn{color:#8b7355;cursor:pointer;width:100%;box-shadow:none;background:0 0;border:none;border-radius:0;margin-top:1.5rem;padding:.8rem 0;font-family:Caveat,cursive;font-size:1.3rem;font-weight:600;text-decoration:underline;transition:color .2s}.rsvp-next-btn:hover{box-shadow:none;color:#6b5638;background:0 0;border:none;transform:none}.rsvp-next-btn:active{transform:none}.guests-summary{background:0 0;border:none;margin-top:1.5rem;padding:0}.guests-summary h3{color:#8b7355;margin-bottom:1rem;font-family:Georgia,serif;font-size:1.1rem}.guests-summary ul{margin:0;padding:0;list-style:none}.guests-summary li{color:#333;align-items:center;gap:.5rem;padding:.5rem 0;font-size:1rem;font-weight:500;display:flex}.guests-summary .badge{color:#8b5a00;background:#ffd89b;border-radius:10px;padding:.2rem .5rem;font-size:.7rem;font-weight:700}.phone-field{background:0 0;border:none;margin-top:1.5rem;padding:0}.phone-field h3{color:#8b7355;margin-bottom:1rem;font-family:Georgia,serif;font-size:1.1rem}.phone-display{justify-content:space-between;align-items:center;gap:.5rem;padding:.5rem 0;display:flex}.phone-number{color:#333;flex:1;font-size:1rem;font-weight:500}.phone-edit-container{align-items:center;gap:.5rem;padding:.5rem 0;display:flex}.phone-input{color:#333;background:0 0;border:none;border-bottom:1px solid #c9a581;outline:none;flex:1;padding:.3rem 0;font-family:Quicksand,sans-serif;font-size:1rem;font-weight:500;transition:border-color .2s}.phone-input:focus{border-bottom-color:#8b7355}.phone-input::placeholder{color:#999;font-weight:400}.phone-error{color:#c62828;margin-top:.5rem;font-size:.85rem;font-weight:500}.travel-form{background:0 0;margin-top:1.5rem;padding:0}.travel-form h3{color:#8b7355;margin-top:1.2rem;margin-bottom:.8rem;font-family:Georgia,serif;font-size:1.1rem}.travel-form h3:first-child{margin-top:0}.radio-label{cursor:pointer;color:#333;align-items:center;gap:.5rem;margin-bottom:.6rem;font-size:1rem;display:flex}.radio-label input[type=radio]{cursor:pointer;accent-color:#8b7355;width:18px;height:18px}.travel-input{color:#333;background:0 0;border:none;border-bottom:1px solid #c9a581;outline:none;width:100%;padding:.5rem 0;font-family:Quicksand,sans-serif;font-size:1rem;transition:border-color .2s}.travel-input:focus{border-bottom-color:#8b7355}.travel-input::placeholder{color:#999;font-weight:400}.checkbox-label{cursor:pointer;color:#333;align-items:center;gap:.5rem;margin-bottom:.8rem;font-size:.95rem;display:flex}.checkbox-label input[type=checkbox]{cursor:pointer;accent-color:#8b7355;width:18px;height:18px}.accommodation-form{background:0 0;margin-top:1.5rem;padding:0}.accommodation-form h3{color:#8b7355;margin-bottom:1rem;font-family:Georgia,serif;font-size:1.1rem}.final-summary{background:#f9f7f180;border:1px solid #c9a581;border-radius:8px;margin-top:1.5rem;padding:1rem}.final-summary h3{color:#8b7355;margin-bottom:1rem;font-family:Georgia,serif;font-size:1.2rem}.final-summary p{color:#333;margin-bottom:.5rem;font-size:.95rem;line-height:1.6}.final-summary p strong{color:#8b7355}.whatsapp-alert{text-align:center;background:#fff3e0e6;border:2px solid #ff9800;border-radius:8px;margin-top:1.5rem;padding:1rem}.whatsapp-alert p{color:#8b5a00;margin-bottom:1rem;font-size:.95rem;font-weight:600}.whatsapp-alert .whatsapp-buttons{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.rsvp-back-btn{color:#8b7355;cursor:pointer;width:100%;box-shadow:none;background:0 0;border:none;border-radius:0;margin-top:1rem;padding:.6rem 0;font-family:Caveat,cursive;font-size:1.1rem;font-weight:600;text-decoration:underline;transition:color .2s}.rsvp-back-btn:hover{box-shadow:none;color:#6b5638;background:0 0;border:none;transform:none}.rsvp-back-btn:active{transform:none}.rsvp-status-header{background:#f9f7f1cc;border:2px solid #c9a581;border-radius:8px;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1.2rem;display:flex}.rsvp-status-emoji{flex-shrink:0;font-size:2.5rem;line-height:1}.rsvp-status-content{flex:1}.rsvp-status-title{color:#8b7355;margin:0 0 .3rem;font-family:Georgia,serif;font-size:1.1rem;font-weight:700;line-height:1.2}.rsvp-status-message{white-space:pre-line;color:#6b5638;margin:0;font-family:Caveat,cursive;font-size:1.1rem;line-height:1.4}.rsvp-expanded .guests-list,.rsvp-expanded .offer-badge,.rsvp-expanded .rsvp-section,.rsvp-expanded .rsvp-confirmed,.rsvp-expanded .rsvp-declined{margin-top:1.5rem}.guests-list{background:0 0;border-left:none;margin-top:1.5rem;padding:0}.guests-list h3{color:#8b7355;margin-bottom:.8rem;font-size:1.1rem}.guests-list ul{padding:0;list-style:none}.guests-list li{align-items:center;gap:.5rem;padding:.3rem 0;font-size:1rem;display:flex}.guests-list .badge{color:#8b5a00;background:#ffd89b;border-radius:10px;padding:.2rem .5rem;font-size:.7rem;font-weight:700}.offer-badge{color:#2e7d32;background:0 0;border-radius:0;margin-top:.8rem;margin-right:.8rem;padding:0;font-size:.85rem;display:inline-block}.rsvp-section{background:0 0;border:none;border-radius:0;margin-top:2rem;padding:0}.rsvp-section h3{color:#8b7355;text-align:center;margin-bottom:1rem;font-size:1.2rem}.rsvp-form{margin-top:1.5rem}.button-group{flex-direction:column;gap:.8rem;margin-top:1.5rem;display:flex}.rsvp-button{cursor:pointer;border:none;border-radius:25px;width:100%;padding:.8rem;font-size:1rem;font-weight:600;transition:transform .2s,box-shadow .2s,opacity .2s;box-shadow:0 2px 8px #00000026}.rsvp-button:disabled{opacity:.6;cursor:not-allowed}.rsvp-button.confirm{color:#fff;background:linear-gradient(135deg,#4caf50 0%,#2e7d32 100%)}.rsvp-button.save{color:#fff;background:linear-gradient(135deg,#3e9eec 0%,#368acf 100%)}.rsvp-button.decline{color:#fff;background:linear-gradient(135deg,#f44336 0%,#c62828 100%)}.cancel-edit-btn{color:#9ca3af;text-align:center;cursor:pointer;background:0 0;border:none;width:100%;margin-top:.5rem;padding:.5rem;font-size:.75rem;text-decoration:underline;transition:color .2s;display:block}.cancel-edit-btn:hover{color:#6b7280}.rsvp-confirmed,.rsvp-declined{text-align:center;border-radius:8px;margin-top:2rem;padding:1.5rem}.rsvp-confirmed{background:#e8f5e9f2;border:2px solid #4caf50}.rsvp-confirmed h3{color:#2e7d32;margin-bottom:1rem}.rsvp-declined{background:#ffebeef2;border:2px solid #f44336}.rsvp-declined h3{color:#c62828;margin-bottom:1rem}.rsvp-actions{text-align:center;margin-top:1.5rem}.edit-response-btn{cursor:pointer;color:#8b7355;background:0 0;border:none;padding:.5rem 1rem;font-size:.95rem;font-weight:600;text-decoration:underline;transition:color .2s}.edit-response-btn:hover{color:#6b5638}.whatsapp-section{text-align:center;border-top:1px solid #e5e7eb;margin-top:1.5rem;padding-top:1rem}.whatsapp-label{color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;font-size:.75rem}.whatsapp-buttons{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.whatsapp-link{color:#16a34a;border-radius:9999px;align-items:center;gap:.375rem;padding:.375rem .75rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.whatsapp-link:hover{color:#15803d;background:#22c55e1a}.message{text-align:center;border-radius:6px;margin-top:1rem;padding:.8rem;font-size:.9rem;font-weight:600}.message.success{color:#155724;background:#d4edda;border:1px solid #c3e6cb}.message.error{color:#721c24;background:#f8d7da;border:1px solid #f5c6cb}@media (width<=480px){.letter-content{padding:.5rem}.front-content{padding:0 1rem}.spacer-top{height:12%}.text-names{margin-bottom:.3rem;font-size:1.8rem}.text-wit{margin-bottom:.6rem;font-size:.8rem}.text-date{margin-bottom:.4rem;font-size:1.1rem}.text-details{font-size:.75rem;line-height:1.3}.text-dress{font-size:1rem}.wax-seal{max-width:48px;bottom:-6px;left:20px}.letter-paper{padding:3rem 1rem 1rem}.letter-title{margin-bottom:1rem;font-size:1.5rem}.letter-body p{margin-bottom:.6rem;font-size:.9rem;line-height:1.5}.card-grid{gap:.8rem;margin-top:.5rem;padding:.8rem .3rem}.info-card{gap:.4rem;padding:0 .6rem}.card-title{font-size:.75rem}.info-card.rsvp-card{padding:.6rem .8rem}.rsvp-card .card-title{font-size:.95rem}.rsvp-card-status{gap:.3rem;padding:.3rem .6rem}.rsvp-card-emoji{font-size:1rem}.rsvp-card-text{font-size:.85rem}.card-modal-content{max-height:85vh;padding:2rem 1.2rem}.expanded-content h2{font-size:1.4rem}.rsvp-modal-title{font-size:1.3rem}.summary-emoji{font-size:2.5rem}.summary-text{font-size:1rem}.guests-list-editable{padding:0}.guests-list-editable h3{font-size:1rem}.guests-list-editable li{padding:.6rem 0}.guest-name{font-size:.9rem}.guest-action-btn{width:26px;height:26px;font-size:.9rem}.guest-input{font-size:.9rem}.guest-textarea{min-height:50px;font-size:.85rem}.rsvp-next-btn{padding:.6rem 0;font-size:1.1rem}.guests-summary h3{font-size:1rem}.guests-summary li{font-size:.9rem}.phone-field h3{font-size:1rem}.phone-number,.phone-input{font-size:.9rem}.phone-error{font-size:.8rem}.travel-form h3{font-size:1rem}.radio-label,.travel-input{font-size:.9rem}.checkbox-label{font-size:.85rem}.accommodation-form h3{font-size:1rem}.final-summary{padding:.8rem}.final-summary h3{font-size:1rem}.final-summary p{font-size:.85rem}.whatsapp-alert{padding:.8rem}.whatsapp-alert p{font-size:.85rem}.rsvp-back-btn{font-size:1rem}.rsvp-status-header{gap:.8rem;padding:1rem}.rsvp-status-emoji{font-size:2rem}.rsvp-status-title{font-size:1rem}.rsvp-status-message{font-size:.95rem}.guests-list{margin-top:1rem;padding:0}.guests-list h3{font-size:1rem}.guests-list li{font-size:.9rem}.rsvp-form{margin-top:1rem}.rsvp-button{padding:.7rem;font-size:.95rem}}@media (width<=652px){.card-grid{grid-template-columns:1fr;gap:.7rem;padding:0 .5rem}.info-card{padding:0 1rem}.card-title{font-size:.85rem}.info-card.rsvp-card{grid-column:1}.rsvp-card .card-title{font-size:1rem}}@media (width<=360px){.text-names{font-size:1.6rem}.text-wit{font-size:.75rem}.text-date{font-size:1rem}.spacer-top{height:5%}.wax-seal{bottom:-11px;left:10px}.card-grid{gap:.6rem;padding:0 .3rem}.card-title{font-size:.8rem}.rsvp-card-emoji{font-size:.9rem}.rsvp-card-text{font-size:.75rem}.rsvp-modal-title{font-size:1.2rem}.summary-emoji{font-size:2rem}.summary-text{font-size:.9rem}.guest-name{font-size:.85rem}.guest-action-btn{width:24px;height:24px;font-size:.85rem}.guest-input{font-size:.85rem}.guest-textarea{font-size:.8rem}.rsvp-next-btn{font-size:1rem}.guests-summary li,.phone-number,.phone-input{font-size:.85rem}.travel-form h3{font-size:.95rem}.radio-label,.travel-input{font-size:.85rem}.checkbox-label,.final-summary p{font-size:.8rem}.rsvp-back-btn{font-size:.95rem}.rsvp-status-emoji{font-size:1.8rem}.rsvp-status-title{font-size:.95rem}.rsvp-status-message{font-size:.85rem}}.loading-screen{background:linear-gradient(135deg,#fdfbfb 0%,#ebedee 100%);flex-direction:column;justify-content:center;align-items:center;height:100vh;display:flex}.spinner{border:4px solid #0000001a;border-top-color:#8b7355;border-radius:50%;width:50px;height:50px;margin-bottom:1rem;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-screen p{color:#555;font-family:Georgia,serif;font-size:1.1rem}.invitation-page{background:linear-gradient(135deg,#fdfbfb 0%,#ebedee 100%);justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:relative}html{font-size:clamp(10px,.4rem + 1vw,17px)}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Georgia,serif}
