@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,600;1,400&family=Montserrat:wght@300;400;500&display=swap";:root{--bg-color:#f7f5f0;--card-bg:#fff;--text-main:#2c3539;--text-muted:#555;--accent-gold:#c5a059;--accent-gold-hover:#b38f4d;--border-light:#e8e5df;--font-serif:"Cormorant Garamond", serif;--font-sans:"Montserrat", sans-serif}html{scroll-behavior:smooth}body{background-color:var(--bg-color);color:var(--text-main);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;padding:0}.fixed-background{z-index:-1;width:100%;height:100vh;position:fixed;top:0;left:0}.fixed-background>div{width:100%;height:100%}.wedding-container{box-sizing:border-box;justify-content:center;align-items:flex-start;min-height:100vh;padding:3rem 1rem;display:flex}.invitation-card{background:var(--card-bg);border-radius:4px;width:100%;max-width:750px;padding:1.5rem;box-shadow:0 15px 50px #0000001a}.card-border{border:1px solid var(--accent-gold);border-radius:2px;padding:3rem 2.5rem}.text-center{text-align:center}.slideshow-container{flex-direction:column;align-items:center;margin-bottom:2.5rem;display:flex}.slideshow-arch{border:1px solid var(--accent-gold);background-color:var(--card-bg);border-radius:150px 150px 0 0;width:250px;height:350px;position:relative;overflow:hidden;box-shadow:0 5px 15px #0000000d}.slide-img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .8s;position:absolute;top:0;left:0}.slide-img.active{opacity:1}.slide-dots{gap:8px;margin-top:14px;display:flex}.dot{border:1px solid var(--accent-gold);cursor:pointer;background:0 0;border-radius:50%;width:8px;height:8px;padding:0;transition:background .3s}.dot.active{background:var(--accent-gold)}.pre-title{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:2px;color:var(--accent-gold);margin-bottom:2rem;font-size:.8rem;line-height:1.6}.couple-names{font-family:var(--font-serif);color:var(--text-main);margin:0;font-size:4rem;font-weight:400;line-height:1.1}.divider{background-color:var(--border-light);width:60%;height:1px;margin:3rem auto;position:relative}.divider:before{content:"✧";background:var(--card-bg);color:var(--accent-gold);padding:0 10px;font-size:1.2rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.tabs{border-bottom:1px solid var(--border-light);margin-bottom:2rem;display:flex}.tab-btn{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:1.5px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;margin-bottom:-1px;padding:.85rem .5rem;font-size:.78rem;transition:color .2s,border-color .2s}.tab-btn.active{color:var(--accent-gold);border-bottom-color:var(--accent-gold)}.tab-btn:hover:not(.active){color:var(--text-main)}.tab-content{min-height:260px}.gallery-tab-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;max-width:560px;margin:0 auto;display:grid}.gallery-tab-img{aspect-ratio:4/5;object-fit:cover;border:1px solid var(--border-light);border-radius:4px;width:100%;box-shadow:0 6px 18px #0000000f}.rsvp-form{text-align:left;max-width:550px;margin:0 auto}.form-row{gap:1.5rem;display:flex}.form-group{flex:1;margin-bottom:1.5rem}label{text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);margin-bottom:.5rem;font-size:.8rem;display:block}input[type=text],input[type=tel],input[type=number],select,textarea{border:1px solid var(--border-light);width:100%;font-family:var(--font-sans);color:var(--text-main);box-sizing:border-box;background:0 0;border-radius:0;padding:.8rem 1rem;font-size:1rem;transition:border-color .3s}input[type=text]:focus,input[type=tel]:focus,input[type=number]:focus,select:focus,textarea:focus{border-color:var(--accent-gold);outline:none}input:disabled{opacity:.4;cursor:not-allowed}textarea{resize:vertical}.checkbox-group{align-items:flex-start;margin-bottom:1rem;display:flex}.checkbox-label{cursor:pointer;font-size:.95rem;font-family:var(--font-sans);color:var(--text-main);text-transform:none;letter-spacing:0;align-items:flex-start;gap:.75rem;margin-bottom:0;display:flex}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-gold);cursor:pointer;flex-shrink:0;margin-top:3px;padding:0}.checkbox-label span{line-height:1.5}.submit-btn{background-color:var(--accent-gold);color:#fff;width:100%;font-family:var(--font-sans);text-transform:uppercase;letter-spacing:2px;cursor:pointer;border:none;margin-top:1rem;padding:1.2rem;font-size:.9rem;transition:background-color .3s}.submit-btn:hover:not(:disabled){background-color:var(--accent-gold-hover)}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.submit-error{color:#c0392b;text-align:center;margin:.5rem 0 0;font-size:.85rem}.success-message{background-color:var(--bg-color);border:1px solid var(--border-light);padding:3rem 2rem}.success-message h3{font-family:var(--font-serif);color:var(--accent-gold);margin-top:0;font-size:2rem}.contribution-footer{border-top:1px solid var(--border-light);margin-top:2.2rem;padding-top:1.2rem}.contribution-footer p{color:var(--text-muted);margin:0;font-size:.92rem;line-height:1.7}@media (width<=600px){.form-row{flex-direction:column;gap:0}.couple-names{font-size:3rem}.card-border{padding:2rem 1.5rem}.tab-btn{letter-spacing:1px;padding:.7rem .3rem;font-size:.68rem}.gallery-tab-grid{grid-template-columns:1fr}}
