@import "https://fonts.googleapis.com/css2?family=Alex+Brush&family=Amiri:ital,wght@0,400;0,700;1,400&family=Cinzel+Decorative:wght@400;600;700;900&family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&family=Plus+Jakarta+Sans:wght@300;400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Abril+Fatface&family=Alex+Brush&family=Amiri:ital,wght@0,400;0,700;1,400&family=Bodoni+Moda:ital,opsz,wght@0,6..96,400..900;1,6..96,400..900&family=Cinzel+Decorative:wght@400;700;900&family=Cinzel:wght@400;600;700;900&family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;0,700;1,400&family=Italianno&family=Montserrat:wght@300;400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&family=Plus+Jakarta+Sans:wght@300;400;500;600;700&family=Prata&family=Rozha+One&family=Yatra+One&display=swap";:root{--bg-dark:#061914;--bg-surface:#0a251f;--bg-card:#0d2e26;--bg-paper:#fcf9f4;--bg-paper-alt:#f5eedf;--text-primary:#fbf8f2;--text-muted:#c9d6cf;--text-dark:#1b2622;--text-dark-muted:#5e6b66;--gold-100:#fbf5dc;--gold-200:#f4e3a3;--gold-300:#dfba53;--gold-400:#c99b27;--gold-500:#9e7514;--gold-gradient:linear-gradient(135deg, #fbf5dc 0%, #dfba53 50%, #9e7514 100%);--gold-foil:linear-gradient(135deg, #fcf6e0 0%, #dfba53 30%, #ffd978 50%, #9e7514 80%, #fcf6e0 100%);--border-gold:#dfba5359;--border-gold-strong:#dfba53b3;--border-gold-subtle:#dfba5326;--accent-ruby:#8c1d2f;--accent-rose:#d47a88;--shadow-gold:0 10px 30px -5px #dfba5340;--shadow-deep:0 20px 40px -10px #0009;--font-serif-royal:"Cinzel Decorative", Georgia, serif;--font-serif-body:"Cormorant Garamond", Garamond, serif;--font-script:"Alex Brush", cursive;--font-arabic:"Amiri", serif;--font-sans:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, sans-serif;--transition-smooth:cubic-bezier(.25, 1, .5, 1);--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--radius-full:9999px}body.theme-burgundy-gold{--bg-dark:#1c050c;--bg-surface:#2b0b14;--bg-card:#360f1b;--bg-paper:#fdfaf6;--text-muted:#d9c8ce;--gold-gradient:linear-gradient(135deg, #faebd7 0%, #d89f55 50%, #915a1f 100%);--gold-foil:linear-gradient(135deg, #faebd7 0%, #d89f55 30%, #fbe4b5 50%, #915a1f 80%, #faebd7 100%);--border-gold:#d89f5559;--shadow-gold:0 10px 30px -5px #d89f5540}body.theme-minimal-champagne{--bg-dark:#101012;--bg-surface:#18181c;--bg-card:#202026;--bg-paper:#f8f6f0;--text-muted:#b8b8c2;--gold-gradient:linear-gradient(135deg, #f5ebd8 0%, #c4a468 50%, #7e6332 100%);--gold-foil:linear-gradient(135deg, #f5ebd8 0%, #c4a468 30%, #fbeccc 50%, #7e6332 80%, #f5ebd8 100%);--border-gold:#c4a46859;--shadow-gold:0 10px 30px -5px #c4a46833}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:var(--bg-dark);color:var(--text-primary);font-family:var(--font-sans);background-image:radial-gradient(circle at 50% 0,#dfba5314 0%,#0000 60%),radial-gradient(circle at 100% 100%,#dfba530d 0%,#0000 50%);min-height:100vh;line-height:1.6;position:relative;overflow-x:hidden}#ambient-particles{pointer-events:none;z-index:999;width:100vw;height:100vh;position:fixed;top:0;left:0}.invitation-container{background-color:var(--bg-surface);border-left:1px solid var(--border-gold-subtle);border-right:1px solid var(--border-gold-subtle);width:100%;max-width:540px;min-height:100vh;margin:0 auto;position:relative;box-shadow:0 0 50px #000c}@media (width>=768px){.invitation-container{border-radius:var(--radius-lg);border:1px solid var(--border-gold);max-width:600px;margin:30px auto;overflow:hidden}}#envelope-screen{z-index:2000;background:var(--bg-dark);transition:opacity 1.1s var(--transition-smooth), visibility 1.1s;background-image:radial-gradient(circle,#dfba531f 0%,#0000 70%);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}#envelope-screen.opened{opacity:0;visibility:hidden;pointer-events:none}.envelope-wrapper{perspective:1200px;text-align:center;width:100%;max-width:380px;position:relative}.envelope-card{background:linear-gradient(165deg, var(--bg-surface) 0%, var(--bg-dark) 100%);border:2px solid var(--border-gold);border-radius:var(--radius-md);width:100%;height:480px;box-shadow:0 25px 60px #000000e6, var(--shadow-gold);flex-direction:column;justify-content:space-between;align-items:center;padding:30px 20px;display:flex;position:relative;overflow:hidden}.envelope-ornament-top,.envelope-ornament-bottom{width:100%;height:40px;color:var(--gold-300);justify-content:center;align-items:center;display:flex}.envelope-seal-zone{cursor:pointer;z-index:10;flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.wax-seal{cursor:pointer;background:radial-gradient(circle at 35% 35%,#f7ebba 0%,#d4af37 40%,#916817 80%,#68480d 100%);border-radius:50%;justify-content:center;align-items:center;width:105px;height:105px;transition:transform .4s cubic-bezier(.34,1.56,.64,1),box-shadow .4s;animation:2.8s ease-in-out infinite sealPulse;display:flex;position:relative;box-shadow:0 12px 25px #0009,inset 0 2px 4px #fff9,inset 0 -3px 6px #0006,0 0 0 4px #dfba5340}@keyframes sealPulse{0%,to{transform:scale(1);box-shadow:0 12px 25px #0009,0 0 20px #dfba5333}50%{transform:scale(1.05);box-shadow:0 16px 30px #000000b3,0 0 35px #dfba5373}}.wax-seal:hover{transform:scale(1.08)rotate(3deg)}.wax-seal-inner{background:radial-gradient(circle at 40% 40%,#d4af37 0%,#aa771c 70%,#724c08 100%);border:1px dashed #fff5c899;border-radius:50%;justify-content:center;align-items:center;width:82px;height:82px;display:flex;box-shadow:inset 0 2px 5px #00000080}.wax-seal-monogram{font-family:var(--font-serif-royal);color:#fff9e6;text-shadow:1px 2px 3px #0009;letter-spacing:2px;font-size:1.55rem;font-weight:700}.envelope-prompt{font-family:var(--font-serif-royal);letter-spacing:3px;text-transform:uppercase;color:var(--gold-200);margin-top:6px;font-size:.85rem;animation:2.2s ease-in-out infinite fadeInOut}@keyframes fadeInOut{0%,to{opacity:.6}50%{opacity:1;text-shadow:0 0 10px #dfba5399}}.envelope-subtitle{font-family:var(--font-serif-body);color:var(--text-muted);font-size:1.15rem;font-style:italic}.gold-corner-frame{border:1px solid var(--border-gold-subtle);pointer-events:none;position:absolute;inset:10px}.gold-corner-frame:before{content:"";border:1px solid var(--border-gold);position:absolute;inset:4px}.top-nav-bar{z-index:100;-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-gold-subtle);background:#0a251fe0;justify-content:space-between;align-items:center;padding:10px 16px;display:flex;position:sticky;top:0}body.theme-burgundy-gold .top-nav-bar{background:#2b0b14e0}body.theme-minimal-champagne .top-nav-bar{background:#18181ce0}.nav-monogram{font-family:var(--font-serif-royal);background:var(--gold-foil);-webkit-text-fill-color:transparent;letter-spacing:1px;-webkit-background-clip:text;font-size:1.1rem;font-weight:700}.nav-actions{align-items:center;gap:10px;display:flex}.btn-icon-pill{border:1px solid var(--border-gold);color:var(--gold-200);border-radius:var(--radius-full);font-size:.78rem;font-family:var(--font-sans);cursor:pointer;background:#dfba531f;align-items:center;gap:6px;padding:6px 12px;transition:all .3s;display:flex}.btn-icon-pill:hover{color:#fff;border-color:var(--gold-300);background:#dfba5340}.audio-toggle-btn{border:1px solid var(--border-gold);color:var(--gold-200);border-radius:var(--radius-full);cursor:pointer;background:#0a251fe6;align-items:center;gap:6px;padding:6px 12px;font-size:.75rem;transition:all .3s;display:flex;box-shadow:0 4px 15px #0006}.audio-toggle-btn.playing{border-color:var(--gold-300);color:#fff}.soundwave-bars{align-items:center;gap:2px;height:12px;display:flex}.soundwave-bar{background-color:var(--gold-300);border-radius:1px;width:2px;height:4px}.audio-toggle-btn.playing .soundwave-bar:first-child{animation:.9s ease-in-out infinite wave}.audio-toggle-btn.playing .soundwave-bar:nth-child(2){animation:1.2s ease-in-out .2s infinite wave}.audio-toggle-btn.playing .soundwave-bar:nth-child(3){animation:.8s ease-in-out .4s infinite wave}@keyframes wave{0%,to{height:3px}50%{height:12px}}.preset-selector-bar{border-bottom:1px solid var(--border-gold-subtle);color:var(--gold-200);background:#00000059;justify-content:space-between;align-items:center;padding:8px 14px;font-size:.76rem;display:flex}.preset-options{gap:6px;display:flex}.preset-btn{color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:1px solid #dfba5340;padding:4px 8px;font-size:.72rem;transition:all .25s}.preset-btn.active{background:var(--gold-gradient);color:var(--text-dark);border-color:#0000;font-weight:600}.hero-section{text-align:center;background:radial-gradient(at 50% 20%,#dfba5326 0%,#0000 70%);padding:45px 24px 35px;position:relative}.sacred-calligraphy{font-family:var(--font-arabic);color:var(--gold-200);text-shadow:0 0 15px #dfba5366;direction:rtl;margin-bottom:8px;font-size:1.95rem;line-height:1.4}.sacred-translation{font-family:var(--font-serif-body);color:var(--text-muted);letter-spacing:.5px;max-width:380px;margin:0 auto 20px;font-size:.95rem;font-style:italic}.ornamental-divider{color:var(--gold-300);opacity:.85;justify-content:center;align-items:center;gap:12px;margin:22px auto;display:flex}.ornamental-line{background:linear-gradient(90deg, transparent, var(--gold-300), transparent);flex:1;max-width:80px;height:1px}.invitation-salutation{font-family:var(--font-serif-royal);letter-spacing:3px;text-transform:uppercase;color:var(--gold-300);margin-bottom:16px;font-size:.82rem}.hero-couple-names{font-family:var(--font-serif-royal);background:var(--gold-foil);-webkit-text-fill-color:transparent;text-shadow:0 4px 20px #00000080;-webkit-background-clip:text;margin-bottom:12px;font-size:2.35rem;font-weight:700;line-height:1.25}@media (width>=500px){.hero-couple-names{font-size:2.8rem}}.hero-ampersand{font-family:var(--font-script);background:var(--gold-foil);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin:0 6px;font-size:2.6rem;font-weight:400;display:inline-block}.hero-invitation-text{font-family:var(--font-serif-body);color:var(--text-muted);max-width:420px;margin:0 auto 25px;font-size:1.15rem;line-height:1.5}.hero-wedding-dates{border-top:1px solid var(--border-gold);border-bottom:1px solid var(--border-gold);font-family:var(--font-serif-royal);letter-spacing:2px;text-transform:uppercase;color:var(--gold-100);align-items:center;gap:10px;padding:8px 20px;font-size:.95rem;display:inline-flex}.couple-feature-section{padding:30px 20px 40px;position:relative}.regal-portrait-frame{border-radius:180px 180px var(--radius-md) var(--radius-md);background:linear-gradient(180deg, var(--gold-300) 0%, var(--gold-500) 60%, var(--border-gold-subtle) 100%);max-width:360px;box-shadow:var(--shadow-deep), 0 0 30px #dfba5340;margin:0 auto 30px;padding:8px;position:relative}.regal-portrait-img{object-fit:cover;border-radius:172px 172px calc(var(--radius-md) - 4px) calc(var(--radius-md) - 4px);filter:contrast(1.03)saturate(1.05);width:100%;height:440px;display:block}.portrait-crown-badge{background:var(--bg-dark);border:1px solid var(--border-gold);color:var(--gold-200);border-radius:var(--radius-full);font-size:.72rem;font-family:var(--font-serif-royal);letter-spacing:2px;text-transform:uppercase;white-space:nowrap;align-items:center;gap:6px;padding:4px 14px;display:flex;position:absolute;top:-18px;left:50%;transform:translate(-50%)}.family-cards-grid{grid-template-columns:1fr;gap:16px;margin-top:15px;display:grid}@media (width>=480px){.family-cards-grid{grid-template-columns:1fr 1fr}}.family-card{background:var(--bg-card);border:1px solid var(--border-gold-subtle);border-radius:var(--radius-md);text-align:center;padding:20px 16px;transition:transform .3s,border-color .3s;position:relative}.family-card:hover{border-color:var(--border-gold);transform:translateY(-3px)}.family-role{font-family:var(--font-serif-royal);letter-spacing:2px;text-transform:uppercase;color:var(--gold-300);margin-bottom:6px;font-size:.75rem}.family-name{font-family:var(--font-serif-royal);color:var(--text-primary);margin-bottom:6px;font-size:1.25rem;font-weight:700}.family-parents{font-family:var(--font-serif-body);color:var(--text-muted);font-size:.98rem;line-height:1.4}.sacred-verse-box{border-left:2px solid var(--gold-300);border-right:2px solid var(--gold-300);border-radius:var(--radius-sm);text-align:center;background:#dfba530d;max-width:480px;margin:30px auto 10px;padding:22px 20px}.verse-text{font-family:var(--font-serif-body);color:var(--gold-100);margin-bottom:8px;font-size:1.2rem;font-style:italic;line-height:1.6}.verse-source{font-family:var(--font-serif-royal);letter-spacing:1.5px;color:var(--gold-300);font-size:.78rem}.countdown-section{text-align:center;border-top:1px solid var(--border-gold-subtle);border-bottom:1px solid var(--border-gold-subtle);background:linear-gradient(#0000 0%,#0000004d 100%);padding:35px 20px}.countdown-title{font-family:var(--font-serif-royal);letter-spacing:3px;text-transform:uppercase;color:var(--gold-300);margin-bottom:20px;font-size:.85rem}.countdown-timer-grid{grid-template-columns:repeat(4,1fr);gap:10px;max-width:380px;margin:0 auto;display:grid}.countdown-box{background:var(--bg-card);border:1px solid var(--border-gold);border-radius:var(--radius-md);flex-direction:column;align-items:center;padding:14px 6px;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 20px #0006}.countdown-box:before{content:"";background:var(--gold-gradient);height:2px;position:absolute;top:0;left:0;right:0}.countdown-value{font-family:var(--font-serif-royal);color:var(--gold-100);text-shadow:0 0 10px #dfba534d;font-size:1.85rem;font-weight:700;line-height:1.1}.countdown-label{letter-spacing:1.5px;text-transform:uppercase;color:var(--text-muted);margin-top:5px;font-size:.65rem}.schedule-section{padding:45px 20px;position:relative}.section-header{text-align:center;margin-bottom:30px}.section-subtitle{font-family:var(--font-serif-royal);letter-spacing:3px;text-transform:uppercase;color:var(--gold-300);margin-bottom:6px;font-size:.78rem}.section-title{font-family:var(--font-serif-royal);background:var(--gold-foil);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.85rem;font-weight:700}.event-tabs-nav{scrollbar-width:none;-ms-overflow-style:none;gap:8px;margin-bottom:24px;padding-bottom:12px;display:flex;overflow-x:auto}.event-tabs-nav::-webkit-scrollbar{display:none}.event-tab-btn{background:var(--bg-card);border:1px solid var(--border-gold-subtle);border-radius:var(--radius-full);color:var(--text-muted);font-size:.8rem;font-family:var(--font-sans);cursor:pointer;white-space:nowrap;flex:none;padding:8px 16px;transition:all .3s}.event-tab-btn.active{background:var(--gold-gradient);color:var(--text-dark);border-color:#0000;font-weight:600;box-shadow:0 4px 15px #dfba534d}.event-detail-card{background:var(--bg-card);border:1px solid var(--border-gold);border-radius:var(--radius-md);box-shadow:var(--shadow-deep);padding:26px 20px;animation:.4s ease-out fadeIn;position:relative}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.event-card-header{border-bottom:1px solid var(--border-gold-subtle);margin-bottom:18px;padding-bottom:16px}.event-badge{border:1px solid var(--border-gold);color:var(--gold-200);border-radius:var(--radius-full);letter-spacing:1px;text-transform:uppercase;background:#dfba5326;margin-bottom:10px;padding:3px 10px;font-size:.7rem;display:inline-block}.event-card-title{font-family:var(--font-serif-royal);color:var(--gold-100);margin-bottom:6px;font-size:1.55rem;font-weight:700}.event-card-subtitle{font-family:var(--font-serif-body);color:var(--text-muted);font-size:1.05rem;font-style:italic}.event-info-list{flex-direction:column;gap:14px;margin-bottom:22px;display:flex}.event-info-item{align-items:flex-start;gap:12px;display:flex}.event-info-icon{border:1px solid var(--border-gold-subtle);width:32px;height:32px;color:var(--gold-300);background:#dfba531f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:2px;display:flex}.event-info-content h4{text-transform:uppercase;letter-spacing:1px;color:var(--gold-300);margin-bottom:2px;font-size:.72rem}.event-info-content p{color:var(--text-primary);font-size:.92rem}.dress-code-swatches{align-items:center;gap:8px;margin-top:6px;display:flex}.swatch-circle{border:1px solid #ffffff4d;border-radius:50%;width:20px;height:20px;box-shadow:0 2px 5px #0000004d}.event-action-buttons{grid-template-columns:1fr 1fr;gap:12px;margin-top:20px;display:grid}.btn-primary-gold{background:var(--gold-gradient);color:var(--text-dark);border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;gap:8px;padding:12px 14px;font-size:.84rem;font-weight:600;text-decoration:none;transition:all .3s;display:flex;box-shadow:0 4px 15px #dfba5340}.btn-primary-gold:hover{transform:translateY(-2px);box-shadow:0 6px 20px #dfba5366}.btn-secondary-outline{color:var(--gold-200);border-radius:var(--radius-sm);border:1px solid var(--border-gold);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:8px;padding:12px 14px;font-size:.84rem;text-decoration:none;transition:all .3s;display:flex}.btn-secondary-outline:hover{color:#fff;border-color:var(--gold-300);background:#dfba531f}.story-section{padding:40px 20px;position:relative}.story-timeline{margin:30px auto 10px;padding-left:24px;position:relative}.story-timeline:before{content:"";background:linear-gradient(180deg, var(--gold-300), var(--border-gold-subtle));width:1px;position:absolute;top:10px;bottom:10px;left:6px}.timeline-milestone{margin-bottom:28px;position:relative}.timeline-dot{background:var(--gold-300);border:2px solid var(--bg-surface);width:13px;height:13px;box-shadow:0 0 10px var(--gold-300);border-radius:50%;position:absolute;top:6px;left:-24px}.timeline-card{background:var(--bg-card);border:1px solid var(--border-gold-subtle);border-radius:var(--radius-md);padding:18px}.timeline-year{font-family:var(--font-serif-royal);letter-spacing:2px;color:var(--gold-300);text-transform:uppercase;font-size:.75rem}.timeline-title{font-family:var(--font-serif-royal);color:var(--gold-100);margin:4px 0 6px;font-size:1.15rem;font-weight:700}.timeline-location{color:var(--gold-200);align-items:center;gap:4px;margin-bottom:8px;font-size:.78rem;display:flex}.timeline-desc{font-family:var(--font-serif-body);color:var(--text-muted);font-size:1.05rem;line-height:1.5}.gallery-section{padding:40px 20px}.gallery-grid{grid-template-columns:1fr;gap:14px;margin-top:25px;display:grid}@media (width>=480px){.gallery-grid{grid-template-columns:1fr 1fr}.gallery-item:first-child{grid-column:span 2}}.gallery-item{border-radius:var(--radius-md);border:1px solid var(--border-gold-subtle);cursor:pointer;aspect-ratio:4/3;transition:transform .4s,border-color .4s;position:relative;overflow:hidden}.gallery-item:first-child{aspect-ratio:16/10}.gallery-item:hover{border-color:var(--gold-300);transform:scale(1.02)}.gallery-img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.gallery-item:hover .gallery-img{transform:scale(1.06)}.gallery-overlay{color:#fff;background:linear-gradient(#0000 50%,#000c 100%);flex-direction:column;justify-content:flex-end;padding:16px;display:flex;position:absolute;inset:0}.gallery-caption-title{font-family:var(--font-serif-royal);color:var(--gold-100);font-size:.95rem}.gallery-caption-subtitle{color:var(--text-muted);font-size:.75rem}#gallery-lightbox{z-index:3000;opacity:0;visibility:hidden;background:#000000f2;justify-content:center;align-items:center;padding:20px;transition:all .3s;display:flex;position:fixed;inset:0}#gallery-lightbox.active{opacity:1;visibility:visible}.lightbox-content{flex-direction:column;align-items:center;max-width:90vw;max-height:85vh;display:flex;position:relative}.lightbox-img{object-fit:contain;border-radius:var(--radius-sm);border:1px solid var(--border-gold);max-width:100%;max-height:75vh}.lightbox-caption{color:var(--gold-200);font-family:var(--font-serif-royal);text-align:center;margin-top:12px;font-size:.95rem}.lightbox-close{color:#fff;cursor:pointer;background:0 0;border:none;font-size:2rem;position:absolute;top:-40px;right:0}.venue-section{padding:40px 20px}.venue-card{background:var(--bg-card);border:1px solid var(--border-gold);border-radius:var(--radius-md);box-shadow:var(--shadow-deep);overflow:hidden}.venue-card-img{object-fit:cover;width:100%;height:220px;display:block}.venue-card-body{padding:24px 20px}.venue-title{font-family:var(--font-serif-royal);color:var(--gold-100);margin-bottom:6px;font-size:1.45rem;font-weight:700}.venue-address{color:var(--text-muted);margin-bottom:16px;font-size:.88rem;line-height:1.5}.concierge-info-box{border-radius:var(--radius-sm);color:var(--text-muted);background:#dfba5314;margin-bottom:20px;padding:14px;font-size:.82rem;line-height:1.6}.concierge-info-box strong{color:var(--gold-200)}.rsvp-section{background:radial-gradient(circle,#dfba531a 0%,#0000 80%);padding:45px 20px;position:relative}.rsvp-card{background:var(--bg-card);border:2px solid var(--border-gold);border-radius:var(--radius-lg);box-shadow:var(--shadow-deep), var(--shadow-gold);padding:30px 20px}.rsvp-form-group{margin-bottom:18px}.rsvp-label{font-size:.78rem;font-family:var(--font-serif-royal);letter-spacing:1.5px;text-transform:uppercase;color:var(--gold-200);margin-bottom:6px;display:block}.rsvp-input,.rsvp-select,.rsvp-textarea{border:1px solid var(--border-gold-subtle);border-radius:var(--radius-sm);color:#fff;width:100%;font-family:var(--font-sans);background:#0006;padding:12px 14px;font-size:.9rem;transition:all .3s}.rsvp-input:focus,.rsvp-select:focus,.rsvp-textarea:focus{border-color:var(--gold-300);background:#0009;outline:none;box-shadow:0 0 10px #dfba5340}.rsvp-radio-group{grid-template-columns:1fr 1fr;gap:10px;display:grid}.rsvp-radio-pill{position:relative}.rsvp-radio-pill input{opacity:0;position:absolute}.rsvp-radio-pill label{text-align:center;border:1px solid var(--border-gold-subtle);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;background:#0000004d;padding:10px 8px;font-size:.8rem;transition:all .25s;display:block}.rsvp-radio-pill input:checked+label{background:var(--gold-gradient);color:var(--text-dark);border-color:#0000;font-weight:600;box-shadow:0 4px 15px #dfba534d}.rsvp-events-checkboxes{border-radius:var(--radius-sm);border:1px solid var(--border-gold-subtle);background:#00000040;flex-direction:column;gap:8px;padding:12px;display:flex}.rsvp-checkbox-item{color:var(--text-primary);cursor:pointer;align-items:center;gap:10px;font-size:.84rem;display:flex}.rsvp-checkbox-item input[type=checkbox]{accent-color:var(--gold-300);width:16px;height:16px}.btn-submit-rsvp{letter-spacing:2px;text-transform:uppercase;width:100%;margin-top:10px;padding:14px;font-size:.92rem}.rsvp-success-card{text-align:center;padding:25px 15px;animation:.5s ease-out fadeIn;display:none}.rsvp-success-card.active{display:block}.rsvp-success-icon{color:var(--gold-200);margin-bottom:12px;font-size:2.8rem}.rsvp-success-title{font-family:var(--font-serif-royal);color:var(--gold-100);margin-bottom:8px;font-size:1.45rem}.rsvp-success-desc{font-family:var(--font-serif-body);color:var(--text-muted);font-size:1.15rem;line-height:1.5}#host-rsvp-modal{z-index:3100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;visibility:hidden;background:#000000e0;justify-content:center;align-items:center;padding:20px;transition:all .3s;display:flex;position:fixed;inset:0}#host-rsvp-modal.active{opacity:1;visibility:visible}.host-modal-dialog{background:var(--bg-surface);border:1px solid var(--border-gold);border-radius:var(--radius-md);width:100%;max-width:580px;max-height:80vh;box-shadow:var(--shadow-deep);flex-direction:column;display:flex;overflow:hidden}.host-modal-header{border-bottom:1px solid var(--border-gold-subtle);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.host-modal-title{font-family:var(--font-serif-royal);color:var(--gold-100);font-size:1.15rem}.host-modal-body{padding:20px;overflow-y:auto}.host-stats-row{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px;display:grid}.host-stat-box{background:var(--bg-card);border:1px solid var(--border-gold-subtle);border-radius:var(--radius-sm);text-align:center;padding:12px 8px}.host-stat-num{font-family:var(--font-serif-royal);color:var(--gold-200);font-size:1.4rem;font-weight:700}.host-stat-label{text-transform:uppercase;color:var(--text-muted);font-size:.68rem}.host-rsvp-table{border-collapse:collapse;width:100%;font-size:.78rem}.host-rsvp-table th{border-bottom:1px solid var(--border-gold-subtle);text-align:left;color:var(--gold-300);padding:8px}.host-rsvp-table td{color:var(--text-primary);border-bottom:1px solid #ffffff0f;padding:8px}.share-section{text-align:center;padding:35px 20px 45px}.share-card{background:var(--bg-card);border:1px solid var(--border-gold);border-radius:var(--radius-md);padding:26px 20px}.qr-canvas-wrapper{border-radius:var(--radius-sm);border:2px solid var(--border-gold);background:#fff;justify-content:center;align-items:center;width:150px;height:150px;margin:18px auto;padding:8px;display:flex}#qr-code-canvas{width:100%;height:100%}.btn-whatsapp-share{color:#fff;border-radius:var(--radius-sm);cursor:pointer;background:#25d366;border:none;justify-content:center;align-items:center;gap:8px;margin-top:15px;padding:12px 18px;font-size:.88rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex}.btn-whatsapp-share:hover{background:#20bd5a;transform:translateY(-2px);box-shadow:0 4px 15px #25d36666}.invitation-footer{text-align:center;border-top:1px solid var(--border-gold-subtle);background:#0006;padding:40px 20px 90px}.footer-monogram{font-family:var(--font-serif-royal);background:var(--gold-foil);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:8px;font-size:1.8rem}.footer-quote{font-family:var(--font-serif-body);color:var(--text-muted);margin-bottom:20px;font-size:1.1rem;font-style:italic}.footer-credits{color:#fff6;letter-spacing:1px;font-size:.72rem}.floating-quick-dock{z-index:1000;-webkit-backdrop-filter:blur(14px);border:1px solid var(--border-gold);border-radius:var(--radius-full);box-shadow:0 10px 30px #000000b3, var(--shadow-gold);background:#0a251feb;align-items:center;gap:12px;padding:6px 12px;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}body.theme-burgundy-gold .floating-quick-dock{background:#2b0b14eb}body.theme-minimal-champagne .floating-quick-dock{background:#18181ceb}.dock-item{color:var(--text-muted);font-size:.72rem;font-family:var(--font-sans);flex-direction:column;align-items:center;gap:2px;padding:4px 6px;text-decoration:none;transition:all .25s;display:flex}.dock-item:hover,.dock-item.active{color:var(--gold-200)}.dock-item svg{width:18px;height:18px}.template-demo-banner{color:#fff;z-index:9999;background:#111;border-bottom:1px solid #d4af3766;justify-content:space-between;align-items:center;padding:8px 16px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.78rem;display:flex;position:sticky;top:0}.template-demo-banner a{color:#f4de9c;align-items:center;gap:4px;font-weight:600;text-decoration:none;display:inline-flex}.template-demo-banner a:hover{text-decoration:underline}.template-demo-actions{align-items:center;gap:12px;display:flex}.btn-use-template{background:#c69b38;border-radius:9999px;padding:4px 12px;font-size:.72rem;transition:all .2s;color:#111!important;font-weight:700!important;text-decoration:none!important}.btn-use-template:hover{background:#e5b955;transform:translateY(-1px)}.polite-audio-pill{z-index:4000;-webkit-backdrop-filter:blur(12px);color:#f4de9c;cursor:pointer;box-sizing:border-box;background:#0f172ae0;border:1px solid #d4af3780;border-radius:9999px;align-items:center;gap:8px;width:auto;max-width:max-content;height:auto;max-height:max-content;padding:8px 14px;font-family:inherit;font-size:.78rem;transition:all .25s;display:inline-flex;position:fixed;inset:48px auto auto 14px;box-shadow:0 8px 24px #0006}.polite-audio-pill:hover{background:#0f172afa;border-color:#d4af37;transform:translateY(-2px)}.polite-soundwave span{background:#f4de9c;border-radius:1px;width:2px;height:4px}@keyframes politeWave{0%,to{height:3px}50%{height:12px}}.template-lightbox{z-index:10000;opacity:0;visibility:hidden;background:#000000f2;justify-content:center;align-items:center;padding:20px;transition:all .3s;display:flex;position:fixed;inset:0}.template-lightbox.active{opacity:1;visibility:visible}.template-lightbox img{object-fit:contain;border-radius:8px;max-width:90vw;max-height:80vh}.template-lightbox-close{color:#fff;cursor:pointer;background:0 0;border:none;font-size:2.2rem;position:absolute;top:20px;right:25px}#ceremonial-cover{z-index:9999;cursor:pointer;touch-action:manipulation;background:#080d0b;justify-content:center;align-items:center;padding:16px;transition:opacity .8s cubic-bezier(.25,1,.5,1),transform .8s cubic-bezier(.25,1,.5,1);display:flex;position:fixed;inset:0;overflow:hidden}#ceremonial-cover.is-opening{opacity:0;pointer-events:none;transform:scale(1.04)}#ceremonial-cover.is-opened{display:none!important}.cover-card-box{text-align:center;cursor:pointer;perspective:1000px;border-radius:18px;width:100%;max-width:420px;padding:40px 24px;position:relative;box-shadow:0 30px 70px #000000f2}.cover-theme-royal{background:linear-gradient(165deg,#0a241e 0%,#051410 100%);border:2px solid #d4af3799;box-shadow:0 20px 50px #000c,0 0 30px #d4af3733}.wax-seal-button{cursor:pointer;background:radial-gradient(circle at 35% 35%,#f7e7b4 0%,#d4af37 40%,#8c6514 100%);border-radius:50%;justify-content:center;align-items:center;width:100px;height:100px;margin:20px auto;transition:transform .3s cubic-bezier(.34,1.56,.64,1);animation:2.6s ease-in-out infinite sealFloat;display:flex;box-shadow:0 10px 25px #000000b3,inset 0 2px 4px #ffffffb3,0 0 0 4px #d4af374d}@keyframes sealFloat{0%,to{transform:scale(1)}50%{transform:scale(1.06);box-shadow:0 15px 30px #000c,0 0 25px #d4af3773}}.wax-seal-button:hover{transform:scale(1.08)rotate(4deg)}.wax-seal-monogram-text{color:#fff9e6;text-shadow:1px 2px 3px #000000b3;font-family:Cinzel Decorative,Georgia,serif;font-size:1.45rem;font-weight:700}.cover-theme-floral{background:#fffdfb;border:2px solid #f4dcd9;box-shadow:0 20px 45px #d47a8840}.floral-ribbon-bow{color:#fff;cursor:pointer;background:#d47a88;border-radius:50%;justify-content:center;align-items:center;width:90px;height:90px;margin:20px auto;font-size:2rem;transition:transform .3s;animation:2.4s ease-in-out infinite ribbonPulse;display:flex;box-shadow:0 8px 20px #d47a8866}@keyframes ribbonPulse{0%,to{transform:scale(1)}50%{transform:scale(1.07)}}.cover-theme-editorial{background:#111114;border:1px solid #c4a46866;box-shadow:0 25px 60px #000000e6}.editorial-stamp-button{cursor:pointer;color:#c4a468;letter-spacing:2px;border:2px solid #c4a468;justify-content:center;align-items:center;width:90px;height:90px;margin:24px auto;font-family:Bodoni Moda,serif;font-size:1.4rem;transition:all .3s;display:flex}.editorial-stamp-button:hover{color:#111;background:#c4a468}.cover-theme-gates{background:#061914;border:2px solid #e5c36599;height:480px;padding:0;display:flex;position:relative;overflow:hidden}.double-gate-panel{background:linear-gradient(135deg,#0a2921 0%,#03120e 100%);border:1px solid #e5c3654d;flex-direction:column;flex:1;justify-content:center;align-items:center;height:100%;transition:transform .9s cubic-bezier(.25,1,.5,1);display:flex}.gate-left{transform-origin:0;border-right:2px solid #e5c365}.gate-right{transform-origin:100%;border-left:2px solid #e5c365}#ceremonial-cover.is-opening .gate-left{transform:rotateY(-90deg)}#ceremonial-cover.is-opening .gate-right{transform:rotateY(90deg)}.gate-handle-emblem{z-index:10;cursor:pointer;background:radial-gradient(circle,#f7e7b4 0%,#d4af37 70%,#7a530c 100%);border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:90px;height:90px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 10px 30px #000c}.cover-theme-scroll{background:linear-gradient(165deg,#420f1d 0%,#22050d 100%);border:2px solid #daa52099;box-shadow:0 20px 50px #000c,0 0 30px #daa5204d}.scroll-seal-button{cursor:pointer;background:radial-gradient(circle,#fce6a2 0%,#daa520 60%,#8a5a0a 100%);border-radius:50%;justify-content:center;align-items:center;width:96px;height:96px;margin:20px auto;animation:2.6s ease-in-out infinite sealFloat;display:flex;box-shadow:0 10px 25px #000000b3,0 0 0 4px #daa5204d}.cover-theme-jewelbox{background:linear-gradient(145deg,#101b38 0%,#0b132b 100%);border:2px solid #d4af37;box-shadow:0 20px 50px #000c,0 0 35px #d4af3740}.cover-theme-cinema{background:#181c20;border:1px solid #e0a96d80;box-shadow:0 20px 50px #000000e6}.cover-theme-mehendi{background:#fff;border:2px solid #f4a261;box-shadow:0 15px 40px #f4a26133}.cover-theme-fusion{background:#241c1c;border:2px solid #c87d5599;box-shadow:0 20px 50px #000c}.cover-theme-walima{background:#0e1524;border:2px solid #d8b46799;box-shadow:0 20px 50px #000000e6,0 0 30px #d8b46733}.digital-folio-wrapper{scroll-behavior:smooth;width:100%;max-width:480px;min-height:100vh;margin:0 auto;padding-bottom:90px;position:relative}.invitation-scene{text-align:center;border-radius:18px;width:100%;margin-bottom:30px;padding:40px 22px 34px;transition:transform .3s;position:relative;overflow:hidden;box-shadow:0 15px 45px #00000059}.foil-border-gold{border:2px solid #d4af378c;box-shadow:inset 0 0 25px #d4af3714,0 15px 45px #00000080}.foil-border-rose{border:1.5px solid #d47a8859;box-shadow:inset 0 0 20px #d47a880d,0 12px 35px #0000000f}.foil-border-amber{border:1px solid #e0a96d66;box-shadow:inset 0 0 30px #e0a96d14}.gold-shimmer-text{background:linear-gradient(135deg,#fff6dc 0%,#d4af37 40%,#ffeba3 60%,#997519 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.scene-switcher-nav{z-index:4000;-webkit-backdrop-filter:blur(16px);background:#0c1210f2;border:1px solid #d4af3773;border-radius:9999px;align-items:center;gap:8px;max-width:92vw;padding:6px 14px;display:flex;position:fixed;bottom:16px;left:50%;overflow-x:auto;transform:translate(-50%);box-shadow:0 12px 35px #000000b3}.scene-nav-link{color:#d1dfd9;white-space:nowrap;border-radius:9999px;padding:6px 12px;font-size:.76rem;font-weight:600;text-decoration:none;transition:all .25s}.scene-nav-link.active,.scene-nav-link:hover{color:#0a1814;background:#d4af37}.polite-audio-pill{z-index:4000;color:#f7e7b4;cursor:pointer;-webkit-backdrop-filter:blur(10px);box-sizing:border-box;background:#0a1814eb;border:1px solid #d4af3780;border-radius:9999px;align-items:center;gap:8px;width:auto;max-width:max-content;height:auto;max-height:max-content;padding:8px 14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.75rem;font-weight:600;transition:all .25s;display:inline-flex;position:fixed;inset:48px auto auto 14px;box-shadow:0 8px 24px #0006}.polite-soundwave{align-items:flex-end;gap:2.5px;height:12px;display:flex}.polite-soundwave span{background-color:#d4af37;border-radius:2px;width:2.5px;height:4px;transition:height .2s}.polite-audio-pill.playing .polite-soundwave span:first-child{animation:1.2s ease-in-out infinite wave}.polite-audio-pill.playing .polite-soundwave span:nth-child(2){animation:1.2s ease-in-out .2s infinite wave}.polite-audio-pill.playing .polite-soundwave span:nth-child(3){animation:1.2s ease-in-out .4s infinite wave}.personalize-prompt-badge{color:#f7e7b4;cursor:pointer;background:#d4af371f;border:1px dashed #d4af3799;border-radius:9999px;align-items:center;gap:8px;margin:10px auto 16px;padding:6px 14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.78rem;text-decoration:none;transition:all .25s;display:inline-flex}.personalize-prompt-badge:hover{background:#d4af3740;border-color:#d4af37;transform:translateY(-1px)}#customizer-floating-btn{z-index:4000;color:#f7e7b4;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0a1814f0;border:1px solid #d4af37;border-radius:9999px;align-items:center;gap:6px;padding:8px 14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.76rem;font-weight:600;transition:all .25s;display:flex;position:fixed;top:50px;right:14px;box-shadow:0 8px 24px #0006}#customizer-floating-btn:hover{color:#0a1814;background:#d4af37;transform:translateY(-2px)}#customizer-modal-overlay{z-index:10000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;visibility:hidden;background:#000000bf;justify-content:center;align-items:flex-end;transition:all .3s cubic-bezier(.25,1,.5,1);display:flex;position:fixed;inset:0}#customizer-modal-overlay.active{opacity:1;visibility:visible}.customizer-modal-sheet{color:#fff;background:#18221e;border-top:2px solid #d4af37;border-radius:24px 24px 0 0;width:100%;max-width:480px;max-height:85vh;padding:24px 20px 30px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow-y:auto;box-shadow:0 -15px 40px #000000b3}.customizer-header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}#btn-close-customizer{color:#aaa;cursor:pointer;background:0 0;border:none;font-size:1.8rem}.customizer-field{margin-bottom:14px}.customizer-field label{text-transform:uppercase;letter-spacing:1px;color:#d4af37;margin-bottom:4px;font-size:.76rem;display:block}.customizer-field input{color:#fff;background:#0e1613;border:1px solid #d4af3766;border-radius:8px;width:100%;padding:10px 12px;font-size:.9rem}.customizer-field input:focus{border-color:#d4af37;outline:none}.btn-customizer-apply{color:#0a1814;cursor:pointer;background:linear-gradient(135deg,#f7e7b4 0%,#d4af37 50%,#8c6514 100%);border:none;border-radius:10px;width:100%;margin-top:10px;padding:14px;font-size:.95rem;font-weight:700}#digital-toast{color:#f7e7b4;z-index:10001;opacity:0;pointer-events:none;background:#0e1c17;border:1px solid #d4af37;border-radius:9999px;padding:10px 20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.85rem;font-weight:600;transition:all .3s cubic-bezier(.25,1,.5,1);position:fixed;top:24px;left:50%;transform:translate(-50%)translateY(-30px);box-shadow:0 10px 25px #00000080}#digital-toast.show{opacity:1;transform:translate(-50%)translateY(0)}.burst-container{pointer-events:none;z-index:8000;position:fixed;inset:0;overflow:hidden}.burst-particle{border-radius:50%;width:8px;height:8px;animation:1.4s cubic-bezier(.1,.8,.3,1) forwards burstMove;position:absolute}@keyframes burstMove{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(calc(-50% + var(--dist) * .7), calc(-50% + var(--dist) * 1.2)) rotate(var(--rot)) scale(.4)}}
