*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--navy-darkest:#050d1a;--navy-darker:#0a1628;--navy-dark:#0f1f3a;--navy:#132744;--navy-light:#1a3358;--navy-lighter:#1e3d6b;--gold-dark:#8b6914;--gold:#c9a84c;--gold-light:#d4b96a;--gold-lighter:#e8d5a0;--gold-shine:#f5e6b8;--gold-glow:#c9a84c4d;--gold-subtle:#c9a84c14;--text-white:#f0ece4;--text-cream:#e8dcc8;--text-muted:#9aa8c0;--font-display:"Playfair Display",Georgia,serif;--font-body:"Cormorant Garamond","Times New Roman",serif;--font-script:"Great Vibes",cursive;--font-sans:"Montserrat","Helvetica Neue",sans-serif;--section-padding:100px 40px;--section-padding-mobile:60px 20px;--ease-elegant:cubic-bezier(0.25,0.46,0.45,0.94);--ease-bounce:cubic-bezier(0.34,1.56,0.64,1)}html{scroll-behavior:smooth}body,html{overflow-x:hidden}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#050d1a;background-color:var(--navy-darkest);color:#f0ece4;color:var(--text-white);font-family:Cormorant Garamond,Times New Roman,serif;font-family:var(--font-body);font-size:18px;line-height:1.7}h1,h2,h3,h4{color:#c9a84c;color:var(--gold);font-family:Playfair Display,Georgia,serif;font-family:var(--font-display);font-weight:500;line-height:1.2}a{color:#d4b96a;color:var(--gold-light);text-decoration:none;transition:color .3s ease}a:hover{color:#f5e6b8;color:var(--gold-shine)}::selection{background:#c9a84c;background:var(--gold);color:#050d1a;color:var(--navy-darkest)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#050d1a;background:var(--navy-darkest)}::-webkit-scrollbar-thumb{background:#8b6914;background:var(--gold-dark);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#c9a84c;background:var(--gold)}.envelope-screen{align-items:center;background:radial-gradient(ellipse at center,var(--navy-dark) 0,var(--navy-darkest) 70%);display:flex;flex-direction:column;height:100vh;height:100dvh;justify-content:center;left:0;overflow:hidden;position:fixed;top:0;transition:opacity .8s var(--ease-elegant),transform .8s var(--ease-elegant);width:100vw;z-index:1000}.envelope-screen.hidden{opacity:0;pointer-events:none;transform:scale(1.1)}.sparkle-container{height:100%;left:0;overflow:hidden;pointer-events:none;position:absolute;top:0;width:100%}.sparkle{animation:sparkleFloat linear infinite;background:var(--gold-light);border-radius:50%;box-shadow:0 0 6px var(--gold-glow);height:4px;opacity:0;position:absolute;width:4px}@keyframes sparkleFloat{0%{opacity:0;transform:translateY(0) scale(0)}20%{opacity:1;transform:translateY(-20px) scale(1)}80%{opacity:.6}to{opacity:0;transform:translateY(-150px) scale(.3)}}.floral-bg-left,.floral-bg-right{border-radius:50%;filter:blur(80px);height:350px;opacity:.15;pointer-events:none;position:absolute;width:350px}.floral-bg-left{background:radial-gradient(circle,var(--gold) 0,#0000 70%);bottom:-50px;left:-100px}.floral-bg-right{background:radial-gradient(circle,var(--gold-light) 0,#0000 70%);right:-100px;top:-50px}.envelope-wrapper{cursor:pointer;perspective:800px;position:relative;transition:transform .4s var(--ease-elegant)}.envelope-wrapper:hover{transform:scale(1.03)}.envelope-wrapper:hover .wax-seal{box-shadow:0 0 40px var(--gold-glow),0 0 80px #c9a84c26}.envelope{background:linear-gradient(145deg,var(--navy-light) 0,var(--navy) 50%,var(--navy-dark) 100%);border-radius:8px;box-shadow:0 20px 60px #00000080,0 0 0 1px #c9a84c26,inset 0 1px 0 #c9a84c1a;height:230px;overflow:visible;position:relative;width:340px}.envelope:before{background:linear-gradient(135deg,#0000,#0000 48%,#c9a84c0f 50%,#0000 52%,#0000);content:"";height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%}.envelope-flap{background:linear-gradient(180deg,var(--navy-lighter) 0,var(--navy-light) 100%);border-top-left-radius:8px;border-top-right-radius:8px;box-shadow:0 2px 10px #0000004d;height:50%;left:-1px;right:-1px;top:-1px;transform-origin:top center;transition:transform .8s var(--ease-elegant);z-index:2}.envelope-flap,.envelope-flap:after{-webkit-clip-path:polygon(0 0,50% 100%,100% 0);clip-path:polygon(0 0,50% 100%,100% 0);position:absolute}.envelope-flap:after{border-top:1px solid #c9a84c33;bottom:0;content:"";left:0;right:0;top:0}.envelope-wrapper.opening .envelope-flap{transform:rotateX(180deg)}.envelope-border{border:1px solid #c9a84c26;border-radius:4px;inset:8px;pointer-events:none;position:absolute}.wax-seal{align-items:center;background:radial-gradient(circle at 35% 35%,#d4a24a 0,#b8862d 40%,#8b6914 100%);box-shadow:0 4px 15px #0006,0 0 25px var(--gold-glow),inset 0 -2px 4px #0000004d,inset 0 2px 4px #f5e6b84d;display:flex;height:70px;justify-content:center;left:50%;top:50%;transform:translate(-50%,-50%);transition:all .6s var(--ease-elegant);width:70px;z-index:3}.wax-seal,.wax-seal:before{border-radius:50%;position:absolute}.wax-seal:before{border:1.5px solid #f5e6b84d;content:"";inset:4px}.seal-initials{color:var(--navy-darkest);font-family:var(--font-script);font-size:22px;letter-spacing:1px;text-shadow:0 1px 2px #f5e6b84d;-webkit-user-select:none;user-select:none}.envelope-wrapper.opening .wax-seal{animation:sealBreak .6s var(--ease-elegant) forwards}@keyframes sealBreak{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}50%{opacity:.8;transform:translate(-50%,-50%) scale(1.3)}to{opacity:0;transform:translate(-50%,-50%) scale(0)}}.card-preview{align-items:center;background:linear-gradient(145deg,var(--navy) 0,var(--navy-dark) 100%);border:1px solid #c9a84c33;border-radius:4px;bottom:10px;display:flex;justify-content:center;left:10px;position:absolute;right:10px;top:10px;transition:transform 1s var(--ease-elegant) .4s;z-index:1}.envelope-wrapper.opening .card-preview{transform:translateY(-120%)}.card-preview-text{font-family:var(--font-script);font-size:16px}.card-preview-text,.envelope-cta{color:var(--gold-light);opacity:.7}.envelope-cta{animation:ctaPulse 2.5s ease-in-out infinite;font-family:var(--font-sans);font-size:14px;font-weight:300;letter-spacing:3px;margin-top:50px;text-transform:uppercase}@keyframes ctaPulse{0%,to{opacity:.4}50%{opacity:.9}}.music-toggle{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#132744cc;border:1px solid #c9a84c4d;border-radius:50%;bottom:30px;box-shadow:0 4px 15px #0000004d;color:var(--gold-light);cursor:pointer;display:flex;font-size:20px;height:50px;justify-content:center;position:fixed;right:30px;transition:all .3s ease;width:50px;z-index:999}.music-toggle:hover{background:#132744;border-color:var(--gold);transform:scale(1.1)}.music-toggle.playing{border-color:var(--gold);box-shadow:0 0 20px var(--gold-glow)}.particles-bg{height:100%;left:0;overflow:hidden;pointer-events:none;position:fixed;top:0;width:100%;z-index:0}.particle{animation:particleDrift linear infinite;background:var(--gold-light);border-radius:50%;opacity:0;position:absolute}@keyframes particleDrift{0%{opacity:0;transform:translateY(100vh) rotate(0deg)}10%{opacity:.6}90%{opacity:.3}to{opacity:0;transform:translateY(-20vh) rotate(1turn)}}.invitation-content{opacity:0;position:relative;transition:opacity 1s var(--ease-elegant);z-index:1}.invitation-content.visible{opacity:1}.nav-bar{background:linear-gradient(180deg,var(--navy-darkest) 0,#0000 100%);display:flex;flex-wrap:wrap;gap:10px;justify-content:center;left:0;opacity:0;padding:15px 40px;position:fixed;right:0;top:0;transform:translateY(-20px);transition:all .6s var(--ease-elegant);z-index:100}.nav-bar.visible{opacity:1;transform:translateY(0)}.nav-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#13274480;border:1px solid #c9a84c26;border-radius:30px;color:var(--text-muted);cursor:pointer;font-family:var(--font-sans);font-size:11px;font-weight:500;letter-spacing:2px;padding:10px 20px;text-transform:uppercase;transition:all .3s ease;white-space:nowrap}.nav-btn:hover{background:#c9a84c14;border-color:var(--gold);color:var(--gold)}.hero-section{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:100vh;overflow:hidden;padding:60px 40px;position:relative;text-align:center}.hero-section:before{background:radial-gradient(ellipse at 20% 80%,#c9a84c0d 0,#0000 50%),radial-gradient(ellipse at 80% 20%,#c9a84c0d 0,#0000 50%);content:"";inset:0}.gold-frame,.hero-section:before{pointer-events:none;position:absolute}.gold-frame{border:1px solid #c9a84c1f;inset:30px}.gold-frame:after,.gold-frame:before{border-color:var(--gold);border-style:solid;content:"";height:40px;position:absolute;width:40px}.gold-frame:before{border-width:2px 0 0 2px;left:-1px;top:-1px}.gold-frame:after{border-width:0 2px 2px 0;bottom:-1px;right:-1px}.hero-ornament-bottom,.hero-ornament-top{color:var(--gold);font-size:40px;line-height:1;opacity:.5}.hero-label{color:var(--gold-light);font-family:var(--font-sans);font-size:12px;font-weight:400;letter-spacing:6px;margin-bottom:20px;opacity:.7;text-transform:uppercase}.hero-names{color:var(--gold);font-family:var(--font-script);font-size:clamp(48px,10vw,100px);line-height:1.2;margin:10px 0;text-shadow:0 0 40px #c9a84c33}.hero-ampersand{color:var(--gold-light);display:block;font-family:var(--font-display);font-size:clamp(28px,5vw,50px);font-style:italic;margin:5px 0;opacity:.6}.hero-message{color:var(--text-cream);font-family:var(--font-body);font-size:clamp(16px,2.5vw,22px);font-style:italic;font-weight:300;line-height:1.8;margin:30px auto 0;max-width:550px}.gold-divider{background:linear-gradient(90deg,#0000,var(--gold),#0000);height:1px;margin:30px auto;position:relative;width:120px}.gold-divider:after{background:var(--navy-darkest);color:var(--gold);content:"✦";font-size:10px;left:50%;padding:0 10px;position:absolute;top:50%;transform:translate(-50%,-50%)}.section{overflow:hidden;padding:var(--section-padding);position:relative;text-align:center}.section-icon{display:block;font-size:36px;margin-bottom:15px}.section-title{color:var(--gold);font-family:var(--font-display);font-size:clamp(28px,5vw,42px);font-weight:500;margin-bottom:15px}.section-subtitle{color:var(--gold-light);font-family:var(--font-sans);font-size:11px;letter-spacing:4px;margin-bottom:40px;opacity:.5;text-transform:uppercase}.section-content{margin:0 auto;max-width:650px}.section-alt{background:linear-gradient(180deg,var(--navy-darker) 0,var(--navy-darkest) 100%)}.section-alt:before{background:linear-gradient(180deg,#0000,var(--gold),#0000);content:"";height:60px;left:50%;opacity:.3;position:absolute;top:0;transform:translateX(-50%);width:1px}.date-display{background:var(--gold-subtle);border:1px solid #c9a84c26;border-radius:8px;margin:30px auto;max-width:500px;padding:40px;position:relative}.date-display:after,.date-display:before{border-color:var(--gold);border-style:solid;content:"";height:30px;opacity:.4;position:absolute;width:30px}.date-display:before{border-width:1px 0 0 1px;left:8px;top:8px}.date-display:after{border-width:0 1px 1px 0;bottom:8px;right:8px}.date-day{color:var(--gold-light);font-size:14px;letter-spacing:4px;opacity:.7;text-transform:uppercase}.date-day,.date-main{font-family:var(--font-display)}.date-main{color:var(--gold);font-size:clamp(36px,6vw,56px);font-weight:600;margin:10px 0}.date-time{color:var(--text-cream);font-family:var(--font-sans);font-size:16px;font-weight:300;letter-spacing:3px}.venue-card{background:#1327444d;border:1px solid #c9a84c1a;border-radius:8px;margin:30px auto;max-width:500px;padding:30px}.venue-label{color:var(--gold);font-family:var(--font-sans);font-size:11px;letter-spacing:4px;margin-bottom:12px;opacity:.7;text-transform:uppercase}.venue-name{color:var(--gold-light);font-family:var(--font-display);font-size:clamp(22px,4vw,30px);font-weight:500;margin-bottom:10px}.venue-address{color:var(--text-muted);font-family:var(--font-body);font-size:16px;font-weight:300;line-height:1.8}.countdown-container{display:flex;flex-wrap:wrap;gap:25px;justify-content:center;margin:40px 0}.countdown-item{align-items:center;display:flex;flex-direction:column;min-width:80px}.countdown-number{color:var(--gold);font-family:var(--font-display);font-size:clamp(36px,6vw,52px);font-weight:600;line-height:1}.countdown-label{color:var(--text-muted);font-family:var(--font-sans);font-size:10px;letter-spacing:3px;margin-top:8px;text-transform:uppercase}.dress-code-text{color:var(--text-cream);font-family:var(--font-body);font-size:20px;margin-bottom:10px}.dress-code-note{color:var(--text-muted);font-family:var(--font-body);font-size:17px;font-style:italic;margin-bottom:35px}.color-swatches{display:flex;flex-wrap:wrap;gap:18px;justify-content:center}.color-swatch{border:2px solid #c9a84c4d;border-radius:50%;cursor:default;height:50px;position:relative;transition:all .3s ease;width:50px}.color-swatch:hover{border-color:var(--gold);box-shadow:0 0 15px #c9a84c33;transform:scale(1.15)}.color-swatch .swatch-label{bottom:-25px;color:var(--text-muted);font-family:var(--font-sans);font-size:9px;left:50%;letter-spacing:1px;opacity:0;position:absolute;text-transform:uppercase;transform:translateX(-50%);transition:opacity .3s ease;white-space:nowrap}.color-swatch:hover .swatch-label{opacity:1}.gift-message{color:var(--text-cream);font-family:var(--font-body);font-size:20px;font-style:italic;line-height:1.9;margin:0 auto;max-width:580px}.map-container{border:1px solid #c9a84c26;border-radius:12px;box-shadow:0 20px 60px #0000004d;margin:30px auto;max-width:700px;overflow:hidden}.map-container iframe{border:none;filter:saturate(.7) brightness(.8) contrast(1.1);height:350px;width:100%}.directions-btn{align-items:center;background:linear-gradient(135deg,var(--gold) 0,var(--gold-light) 100%);border:none;border-radius:50px;color:var(--navy-darkest);cursor:pointer;display:inline-flex;font-family:var(--font-sans);font-size:12px;font-weight:600;gap:10px;letter-spacing:3px;margin-top:25px;padding:14px 35px;text-decoration:none;text-transform:uppercase;transition:all .3s ease}.directions-btn:hover{box-shadow:0 8px 25px #c9a84c4d;color:var(--navy-darkest);transform:translateY(-2px)}.rsvp-section{background:linear-gradient(180deg,var(--navy-dark) 0,var(--navy-darkest) 100%)}.rsvp-text{color:var(--text-cream);font-family:var(--font-body);font-size:20px;font-style:italic;line-height:1.9;margin:0 auto 30px;max-width:520px}.rsvp-btn{align-items:center;background:linear-gradient(135deg,var(--gold) 0,var(--gold-light) 100%);border:none;border-radius:50px;color:var(--navy-darkest);cursor:pointer;display:inline-flex;font-family:var(--font-sans);font-size:13px;font-weight:600;gap:10px;letter-spacing:4px;overflow:hidden;padding:18px 50px;position:relative;text-transform:uppercase;transition:all .3s ease}.rsvp-btn:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.rsvp-btn:hover:before{left:100%}.rsvp-btn:hover{box-shadow:0 10px 30px #c9a84c4d;transform:translateY(-3px)}.closing-section{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:60vh;padding:var(--section-padding);position:relative}.closing-message{color:var(--text-cream);font-family:var(--font-body);font-size:clamp(18px,3vw,24px);font-style:italic;line-height:1.9;margin:0 auto 40px;max-width:600px}.closing-names{color:var(--gold);font-family:var(--font-script);font-size:clamp(40px,8vw,72px);text-shadow:0 0 30px #c9a84c33}.gold-flourish{background:linear-gradient(90deg,#0000,var(--gold),#0000);height:2px;margin:20px auto;position:relative;width:200px}.gold-flourish:before{background:var(--navy-darkest);color:var(--gold);content:"❦";font-size:16px;left:50%;padding:0 15px;position:absolute;top:50%;transform:translate(-50%,-50%)}.fade-in-up{opacity:0;transform:translateY(40px);transition:opacity .8s var(--ease-elegant),transform .8s var(--ease-elegant)}.fade-in-up.visible{opacity:1;transform:translateY(0)}.fade-in-up.delay-1{transition-delay:.1s}.fade-in-up.delay-2{transition-delay:.2s}.fade-in-up.delay-3{transition-delay:.3s}.fade-in-up.delay-4{transition-delay:.4s}@media (max-width:768px){.section{padding:var(--section-padding-mobile)}.nav-bar{-webkit-overflow-scrolling:touch;gap:8px;justify-content:flex-start;overflow-x:auto;padding:12px 10px;scrollbar-width:none;white-space:nowrap;width:100%}.nav-bar::-webkit-scrollbar{display:none}.nav-btn{flex-shrink:0;font-size:10px;letter-spacing:1px;padding:8px 14px}.envelope{height:190px;width:280px}.wax-seal{height:56px;width:56px}.seal-initials{font-size:18px}.gold-frame{inset:15px}.floral-corner.top-left{left:15px;top:15px}.floral-corner.top-right{right:15px;top:15px}.floral-corner.bottom-left{bottom:15px;left:15px}.floral-corner.bottom-right{bottom:15px;right:15px}.floral-corner{height:90px;width:90px}.date-display{padding:25px}.countdown-container{flex-wrap:nowrap;gap:10px}.countdown-item{flex:1 1;min-width:55px}.countdown-number{font-size:28px}.countdown-label{font-size:8px;letter-spacing:1px}.color-swatch{height:40px;width:40px}.map-container iframe{height:250px}.music-toggle{bottom:15px;font-size:16px;height:42px;right:15px;width:42px}.hero-section{padding:40px 20px}.hero-names{font-size:40px!important}.hero-ampersand{font-size:24px!important;margin:2px 0}.hero-message{font-size:16px!important;line-height:1.6;padding:0 10px}.hero-label{font-size:10px;letter-spacing:4px}.gift-message{font-size:16px;line-height:1.7;padding:0 10px}.closing-section{padding:var(--section-padding-mobile)}.closing-message{font-size:16px;line-height:1.7;padding:0 10px}.closing-names{font-size:36px}}@media (max-width:400px){.envelope{height:165px;width:240px}.wax-seal{height:48px;width:48px}.seal-initials{font-size:15px}}.floral-corner{height:150px;opacity:.12;pointer-events:none;position:absolute;width:150px}.floral-corner.top-left{left:30px;top:30px}.floral-corner.top-right{right:30px;top:30px;transform:scaleX(-1)}.floral-corner.bottom-left{bottom:30px;left:30px;transform:scaleY(-1)}.floral-corner.bottom-right{bottom:30px;right:30px;transform:scale(-1)}.rsvp-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#050d1ad9;display:flex;inset:0;justify-content:center;opacity:0;padding:20px;pointer-events:none;position:fixed;transition:opacity .4s ease;z-index:2000}.rsvp-modal-overlay.active{opacity:1;pointer-events:all}.rsvp-modal{background:linear-gradient(145deg,var(--navy-dark) 0,var(--navy-darkest) 100%);border:1px solid #c9a84c33;border-radius:16px;box-shadow:0 30px 80px #00000080;max-width:480px;padding:50px 40px;position:relative;text-align:center;transform:scale(.9) translateY(20px);transition:transform .4s var(--ease-elegant);width:100%}.rsvp-modal-overlay.active .rsvp-modal{transform:scale(1) translateY(0)}.rsvp-modal-close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:24px;padding:5px;position:absolute;right:20px;top:15px;transition:color .3s ease}.rsvp-modal h3,.rsvp-modal-close:hover{color:var(--gold)}.rsvp-modal h3{font-family:var(--font-display);font-size:28px;margin-bottom:8px}.rsvp-modal p{color:var(--text-muted);font-family:var(--font-body);font-size:16px;margin-bottom:30px}.rsvp-form-group{margin-bottom:20px;text-align:left}.rsvp-form-group label{color:var(--gold-light);display:block;font-family:var(--font-sans);font-size:10px;letter-spacing:2px;margin-bottom:8px;opacity:.7;text-transform:uppercase}.rsvp-form-group input,.rsvp-form-group select{background:#13274480;border:1px solid #c9a84c26;border-radius:8px;color:var(--text-white);font-family:var(--font-body);font-size:16px;outline:none;padding:14px 18px;transition:border-color .3s ease;width:100%}.rsvp-form-group input:focus,.rsvp-form-group select:focus{border-color:var(--gold)}.rsvp-form-group input::placeholder{color:var(--text-muted);opacity:.5}.rsvp-form-group select option{background:var(--navy-dark);color:var(--text-white)}.rsvp-submit-btn{background:linear-gradient(135deg,var(--gold) 0,var(--gold-light) 100%);border:none;border-radius:50px;color:var(--navy-darkest);cursor:pointer;font-family:var(--font-sans);font-size:12px;font-weight:600;letter-spacing:3px;margin-top:10px;padding:16px;text-transform:uppercase;transition:all .3s ease;width:100%}.rsvp-submit-btn:hover{box-shadow:0 8px 25px #c9a84c4d;transform:translateY(-2px)}.rsvp-success{padding:20px}.rsvp-success .checkmark{font-size:50px;margin-bottom:15px}.rsvp-success h3{color:var(--gold);font-family:var(--font-display);font-size:26px;margin-bottom:10px}.rsvp-success p{color:var(--text-cream);font-family:var(--font-body);font-size:18px}@media (max-width:768px){.rsvp-modal{padding:35px 25px}}
/*# sourceMappingURL=main.278ec6b9.css.map*/