@import"https://fonts.googleapis.com/css2?family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&family=Inter:wght@300;400;500;600&display=swap";:root{--masters-green: #0F5132;--masters-green-light: #187248;--masters-green-dark: #0A3A23;--masters-yellow: #FFD700;--masters-yellow-light: #FFE44D;--masters-yellow-dark: #D4AF37;--masters-white: #F8F9FA;--masters-cream: #FDFBF7;--text-primary: #1A1A1A;--text-secondary: #4A4A4A;--font-serif: "New Baskerville", "Libre Baskerville", "Baskerville", serif;--font-sans: "New Baskerville", "Libre Baskerville", "Baskerville", serif;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--masters-green-dark);color:var(--text-primary);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:700}button{font-family:var(--font-sans);cursor:pointer;border:none;background:none}button:disabled{cursor:not-allowed;opacity:.6}input,select,textarea{font-family:var(--font-sans)}.container{width:100%;max-width:600px;margin:0 auto;padding:1rem}.text-center{text-align:center}.envelope-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;width:100vw;perspective:1000px;cursor:pointer}.envelope{position:relative;width:320px;height:220px;background-color:var(--masters-green-dark);border-radius:4px;box-shadow:var(--shadow-xl);transition:transform .4s ease}.envelope:hover{transform:translateY(-5px)}.envelope.is-open{cursor:default;transform:none}.envelope-back{position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--masters-green-light);border-radius:4px;z-index:1}.envelope-paper-preview{position:absolute;top:10px;left:10px;right:10px;height:200px;background-color:var(--masters-cream);border-radius:4px;z-index:2;box-shadow:var(--shadow-md);display:flex;justify-content:center}.paper-top-border{width:80%;height:4px;background-color:var(--masters-green);margin-top:20px;border-radius:2px}.envelope-front{position:absolute;top:0;left:0;width:100%;height:100%;z-index:3}.flap-left{position:absolute;top:0;left:0;width:0;height:0;border-top:110px solid transparent;border-bottom:110px solid transparent;border-left:160px solid var(--masters-green)}.flap-right{position:absolute;top:0;right:0;width:0;height:0;border-top:110px solid transparent;border-bottom:110px solid transparent;border-right:160px solid var(--masters-green)}.flap-bottom{position:absolute;bottom:0;left:0;width:0;height:0;border-left:160px solid transparent;border-right:160px solid transparent;border-bottom:110px solid var(--masters-green-dark)}.flap-top{position:absolute;top:0;left:0;width:0;height:0;border-left:160px solid transparent;border-right:160px solid transparent;border-top:120px solid var(--masters-green);z-index:4;transform-origin:top;transition:transform .6s cubic-bezier(.4,0,.2,1);filter:drop-shadow(0 4px 6px rgba(0,0,0,.2))}.flap-top.open{transform:rotateX(180deg);z-index:1}.wax-seal{position:absolute;bottom:10px;left:-25px;width:50px;height:50px;background:radial-gradient(circle,var(--masters-yellow-light) 0%,var(--masters-yellow-dark) 100%);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--masters-green-dark);box-shadow:inset 0 0 5px #0000004d,0 2px 4px #0006;z-index:5;transition:opacity .3s ease,transform .3s ease}.wax-seal.broken{opacity:0;transform:scale(.8) translateY(20px)}.seal-text{font-family:var(--font-serif);font-weight:700;font-size:14px;line-height:1}.seal-icon{margin-top:2px}.tap-instruction{margin-top:40px;color:var(--masters-yellow);font-family:var(--font-serif);font-size:1.2rem;letter-spacing:2px;text-transform:uppercase;font-weight:600;text-shadow:0 2px 4px rgba(0,0,0,.5)}.invitation-card{background-color:var(--masters-cream);width:90vw;max-width:400px;min-height:80vh;margin:2rem auto;border-radius:8px;box-shadow:0 20px 40px #0000004d;padding:1rem;position:relative;overflow:hidden}.card-border-inner{border:2px solid var(--masters-green);border-radius:4px;padding:2rem 1.5rem;height:100%;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;text-align:center;position:relative}.card-border-inner:after{content:"";position:absolute;inset:6px;border:1px solid var(--masters-yellow-dark);pointer-events:none}.logo-container{margin-bottom:2rem}.logo-image{max-width:240px;height:auto;display:block;margin:0 auto}.subtitle{font-family:var(--font-serif);font-style:italic;color:var(--text-secondary);font-size:1.1rem;margin-top:.5rem}.event-title{color:var(--masters-green);font-size:2.5rem;margin-bottom:.5rem;line-height:1.2}.food-included{font-family:var(--font-serif);font-style:italic;color:var(--text-secondary);font-size:1.1rem;margin-bottom:1.5rem}.divider{display:flex;align-items:center;justify-content:center;margin:2rem auto;width:80%}.divider-line{height:1px;flex:1;background-color:var(--masters-yellow-dark)}.divider-icon{margin:0 1rem;font-size:1.5rem}.card-body{margin-bottom:2.5rem}.date{font-family:var(--font-sans);font-weight:600;font-size:1.4rem;color:var(--text-primary);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:2px}.time{font-size:1.2rem;color:var(--text-secondary);margin-bottom:1.5rem}.location{margin-top:1.5rem}.venue{font-family:var(--font-serif);font-weight:700;font-size:1.5rem;color:var(--masters-green);margin-bottom:.25rem}.address{font-size:1rem;color:var(--text-secondary);line-height:1.4}.card-footer{width:100%;margin-top:auto;min-height:250px}.rsvp-container{width:100%;display:flex;justify-content:center;align-items:center;min-height:250px}.rsvp-form{width:100%;max-width:320px;background-color:var(--masters-white);padding:1.5rem;border-radius:8px;border:1px solid var(--masters-green-light);box-shadow:var(--shadow-sm)}.rsvp-title{font-family:var(--font-serif);color:var(--masters-green-dark);font-size:1.6rem;text-align:center;margin-bottom:1.5rem;border-bottom:1px solid var(--masters-yellow);padding-bottom:.5rem}.form-group{margin-bottom:1rem;text-align:left}.form-group label{display:block;font-family:var(--font-sans);font-size:.9rem;font-weight:600;color:var(--text-secondary);margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.5px}.form-group input,.form-group select{width:100%;padding:.75rem;border:1px solid #ccc;border-radius:4px;font-size:1rem;transition:border-color .2s,box-shadow .2s;background-color:#fff}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--masters-green);box-shadow:0 0 0 2px #0f513233}.submit-btn{width:100%;padding:.875rem;margin-top:1rem;background-color:var(--masters-green);color:#fff;font-weight:600;font-size:1.1rem;border-radius:4px;transition:all .3s ease;text-transform:uppercase;letter-spacing:1px}.submit-btn:hover:not(:disabled){background-color:var(--masters-green-light);transform:translateY(-2px);box-shadow:var(--shadow-md)}.submit-btn:active:not(:disabled){transform:translateY(0)}.submit-btn.submitting{background-color:var(--masters-yellow-dark)}.success-message{text-align:center;padding:2rem;color:var(--masters-green-dark)}.success-icon{width:64px;height:64px;background-color:var(--masters-green);color:#fff;border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:2rem;margin:0 auto 1.5rem;box-shadow:0 0 0 4px var(--masters-yellow)}.success-message h3{font-size:1.8rem;margin-bottom:.5rem}.success-message p{color:var(--text-secondary);font-size:1.1rem}
