:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;--burgundy-primary:#8b1a1a;--burgundy-light:#a53838;--burgundy-deep:#5c0a0a;--burgundy-muted:#b85959;--burgundy-gradient:linear-gradient(135deg, #a53838, #8b1a1a, #5c0a0a);--gold-rich:#c9a547;--gold-warm:#d4b45a;--gold-pale:#e5c76b;--gold-deep:#9c7a2c;--gold-shadow:#7a5e1f;--gold-rich-gradient:linear-gradient(135deg, #e5c76b, #c9a547, #9c7a2c);--gold-rich-gradient-h:linear-gradient(90deg, transparent, #c9a547, #e5c76b, #c9a547, transparent);--blue-primary:var(--burgundy-primary);--blue-light:var(--burgundy-light);--blue-dark:var(--burgundy-deep);--blue-muted:var(--burgundy-muted);--blue-gradient:var(--burgundy-gradient);--blue-gradient-h:linear-gradient(90deg, transparent, #a53838, #8b1a1a, #a53838, transparent);--gold-accent:var(--gold-rich);--gold-light:var(--gold-pale);--gold-dark:var(--gold-deep);--gold-gradient:var(--gold-rich-gradient);--gold-gradient-h:var(--gold-rich-gradient-h);--navy-primary:var(--burgundy-deep);--navy-dark:#3d0606;--navy-gradient:linear-gradient(90deg, #5c0a0a 0%, #8b1a1a 30%, #c9a547 50%, #8b1a1a 70%, #5c0a0a 100%);--cream:#fdf8f0;--cream-light:#faf3e4;--ivory:#f7efd9;--parchment:#f0e5c9;--bg-overlay:#fdf8f0eb;--bg-pattern:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23C9A547' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");--text-primary:#3d1f1f;--text-secondary:#6b3838;--text-muted:#8b5a5a;--text-accent:#8b1a1a;--text-gold:#9c7a2c;--text-white:#fff;--text-cream:#fdf8f0;--border-blue:#8b1a1a4d;--border-blue-strong:#8b1a1a99;--border-burgundy:#8b1a1a4d;--border-burgundy-strong:#8b1a1a99;--border-gold:#c9a54766;--border-gold-strong:#c9a547b3;--shadow-blue:#8b1a1a2e;--shadow-burgundy:#8b1a1a2e;--shadow-gold:#c9a5472e;--backdrop:#3c0a0a99;--glass-bg:#fdf8f0bf;--glass-border:#c9a54759;--overlay-dark:#3c0a0a8c;--overlay-dark-strong:#3c0a0abf;--success:#2e7d4f;--success-bg:#2e7d4f1a;--danger:#b53a3a;--danger-bg:#b53a3a1a;--font-script:"Great Vibes", cursive;--font-heading:"Playfair Display", serif;--font-body:"Poppins", sans-serif;--font-arabic:"Amiri", serif;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--space-4xl:96px;--section-padding:60px 24px;--container-max-width:480px;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-xl:24px;--radius-2xl:32px;--radius-full:50%;--shadow-sm:0 1px 3px #3c0a0a14;--shadow-md:0 4px 12px #3c0a0a1a;--shadow-lg:0 8px 24px #3c0a0a1f;--shadow-xl:0 12px 40px #3c0a0a29;--shadow-blue-md:0 4px 20px #8b1a1a38;--shadow-blue-lg:0 8px 32px #8b1a1a47;--shadow-burgundy-md:0 4px 20px #8b1a1a38;--shadow-burgundy-lg:0 8px 32px #8b1a1a47;--shadow-gold-md:0 4px 20px #c9a54740;--shadow-gold-lg:0 8px 32px #c9a5474d;--transition-fast:.2s ease;--transition-normal:.3s ease;--transition-slow:.6s ease;--transition-spring:.5s cubic-bezier(.34, 1.56, .64, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);color:var(--text-primary);background:var(--cream);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;font-weight:300;line-height:1.6;overflow-x:hidden}img{max-width:100%;height:auto;display:block}button{font-family:var(--font-body);cursor:pointer;background:0 0;border:none;outline:none}input,select,textarea{font-family:var(--font-body);outline:none;font-size:14px}a{color:inherit;text-decoration:none}.font-script{font-family:var(--font-script);font-weight:400}.font-heading{font-family:var(--font-heading)}.font-arabic{font-family:var(--font-arabic);direction:rtl;line-height:2}@keyframes fadeUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeDown{0%{opacity:0;transform:translateY(-40px)}to{opacity:1;transform:translateY(0)}}@keyframes slideLeft{0%{opacity:0;transform:translate(60px)}to{opacity:1;transform:translate(0)}}@keyframes slideRight{0%{opacity:0;transform:translate(-60px)}to{opacity:1;transform:translate(0)}}@keyframes scaleUp{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.reveal{opacity:0;transition:opacity .8s,transform .8s}.reveal.visible{opacity:1}.reveal.fade-up{transform:translateY(40px)}.reveal.fade-up.visible{transform:translateY(0)}.reveal.fade-down{transform:translateY(-40px)}.reveal.fade-down.visible{transform:translateY(0)}.reveal.fade-in.visible{opacity:1}.reveal.slide-left{transform:translate(60px)}.reveal.slide-left.visible{transform:translate(0)}.reveal.slide-right{transform:translate(-60px)}.reveal.slide-right.visible{transform:translate(0)}.reveal.scale-up{transform:scale(.85)}.reveal.scale-up.visible{transform:scale(1)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.reveal-delay-4{transition-delay:.4s}.reveal-delay-5{transition-delay:.5s}.ornament-divider{background:var(--gold-rich-gradient-h);width:200px;height:1px;margin:var(--space-lg) auto;position:relative}.ornament-divider:before{content:"✦";color:var(--gold-rich);background:var(--cream);padding:0 12px;font-size:14px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ornament-divider-sm{background:var(--gold-rich-gradient-h);width:120px;height:1px;margin:var(--space-md) auto}.section{padding:var(--section-padding);position:relative;overflow:hidden}.section-inner{max-width:var(--container-max-width);z-index:2;margin:0 auto;position:relative}.section-title{font-family:var(--font-script);color:var(--burgundy-primary);text-align:center;margin-bottom:var(--space-lg);text-shadow:1px 1px 2px #3c0a0a14;font-size:38px}.ornament-frame{padding:var(--space-2xl) var(--space-lg);position:relative}.ornament-frame:before,.ornament-frame:after{content:"";border:2px solid var(--gold-rich);opacity:.55;pointer-events:none;width:80px;height:80px;position:absolute}.ornament-frame:before{border-top-left-radius:var(--radius-lg);border-bottom:none;border-right:none;top:0;left:0}.ornament-frame:after{border-bottom-right-radius:var(--radius-lg);border-top:none;border-left:none;bottom:0;right:0}.maroon-strip{background:var(--navy-gradient);z-index:3;width:100%;height:8px;position:relative}.btn-gold{justify-content:center;align-items:center;gap:var(--space-sm);background:var(--burgundy-gradient);color:var(--text-white);font-family:var(--font-body);border:1px solid var(--gold-rich);border-radius:var(--radius-xl);cursor:pointer;transition:all var(--transition-normal);box-shadow:var(--shadow-burgundy-md);letter-spacing:.3px;padding:12px 28px;font-size:14px;font-weight:500;display:inline-flex}.btn-gold:hover{box-shadow:var(--shadow-burgundy-lg);border-color:var(--gold-pale);transform:translateY(-2px)}.btn-gold:active{transform:translateY(0)}.btn-gold:focus-visible{outline:2px solid var(--gold-pale);outline-offset:3px}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--cream)}::-webkit-scrollbar-thumb{background:var(--burgundy-muted);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--burgundy-primary)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.cover{z-index:100;background:var(--cream);border-top:10px solid var(--burgundy-deep);border-bottom:10px solid var(--burgundy-deep);justify-content:center;align-items:center;width:100%;max-width:500px;animation:1s fadeIn;display:flex;position:fixed;top:0;bottom:0;left:50%;overflow:hidden;transform:translate(-50%)}.cover-frame{z-index:1;pointer-events:none;animation:1.2s fadeIn;position:absolute;inset:0}.cover-frame img{object-fit:cover;object-position:center;width:100%;height:100%}.cover-corner{z-index:5;pointer-events:none;height:auto;animation:1.6s .3s both fadeIn;position:absolute}.corner-ornamen-tl{width:120px;top:-2px;left:-2px}.corner-ornamen-br{width:120px;bottom:-2px;right:-2px;transform:rotate(180deg)}.corner-flower-tr{mix-blend-mode:multiply;width:175px;top:-10px;right:-10px;transform:rotate(180deg)}.corner-flower-bl{mix-blend-mode:multiply;width:175px;bottom:-10px;left:-10px}.cover-content{align-items:center;gap:var(--space-md);z-index:10;padding:var(--space-xl);flex-direction:column;animation:1.2s scaleUp;display:flex;position:relative}.cover-label{font-family:var(--font-heading);color:var(--gold-deep);letter-spacing:3px;text-transform:uppercase;font-size:14px;font-style:italic;font-weight:400}.cover-names{flex-direction:column;align-items:center;gap:0;display:flex}.cover-name{color:var(--burgundy-primary);text-shadow:1px 2px 3px #3c0a0a2e;font-size:64px;line-height:1.1}.cover-ampersand{font-family:var(--font-script);color:var(--gold-rich);text-shadow:1px 1px 2px #9c7a2c40;margin:-8px 0;font-size:42px}.cover-date{font-family:var(--font-heading);color:var(--text-primary);letter-spacing:4px;text-transform:uppercase;font-size:14px;font-weight:500}.cover-guest{margin-top:var(--space-lg);text-align:center;padding:var(--space-md) var(--space-xl);-webkit-backdrop-filter:blur(4px);border-radius:var(--radius-md);border:1px solid var(--border-gold);background:#fdf8f08c}.cover-guest-label{color:var(--gold-deep);letter-spacing:.5px;margin-bottom:var(--space-xs);font-size:12px}.cover-guest-name{font-family:var(--font-heading);color:var(--burgundy-primary);word-break:break-word;font-size:20px;font-weight:600}.cover-guest-note{margin-top:var(--space-xs);color:var(--text-secondary);font-size:11px;font-style:italic;line-height:1.5}.cover-btn{margin-top:var(--space-xl);animation:2s ease-in-out infinite pulse}.cover-btn:hover{animation:none}.cover.closing{animation:.8s forwards coverSlideUp}@keyframes coverSlideUp{to{opacity:0;transform:translate(-50%)translateY(-100%)}}@media (width<=360px){.cover-name{font-size:48px}.corner-ornamen-tl,.corner-ornamen-br{width:95px}.corner-flower-tr,.corner-flower-bl{width:140px}}.section-decor{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.sd-slot{width:160px;height:160px;position:absolute}.sd-tl{top:0;left:0}.sd-tr{top:0;right:0}.sd-bl{bottom:0;left:0}.sd-br{bottom:0;right:0}.sd-corner{opacity:0;will-change:opacity, transform;height:auto;transition:opacity .9s ease-in-out,transform .9s cubic-bezier(.34,1.4,.64,1);position:absolute}.sd-ornamen{width:148px;transition-delay:.1s}.sd-flower{width:136px;transition-delay:.28s}.sd-tl .sd-corner{top:0;left:0}.sd-tr .sd-corner{top:0;right:0}.sd-bl .sd-corner{bottom:0;left:0}.sd-br .sd-corner{bottom:0;right:0}.sd-tl .sd-ornamen{transform:scale(.6)}.sd-tr .sd-ornamen{transform:scale(-.6,.6)}.sd-bl .sd-ornamen{transform:scale(.6,-.6)}.sd-br .sd-ornamen{transform:scale(-.6)}.sd-bl .sd-flower{transform:scale(.6)}.sd-br .sd-flower{transform:scale(-.6,.6)}.sd-tl .sd-flower{transform:scale(.6,-.6)}.sd-tr .sd-flower{transform:scale(-.6)}.section.revealed .sd-corner{opacity:1}.section.revealed .sd-tl .sd-ornamen{transform:scale(1)}.section.revealed .sd-tr .sd-ornamen{transform:scaleX(-1)}.section.revealed .sd-bl .sd-ornamen{transform:scaleY(-1)}.section.revealed .sd-br .sd-ornamen{transform:scale(-1)}.section.revealed .sd-bl .sd-flower{transform:scale(1)}.section.revealed .sd-br .sd-flower{transform:scaleX(-1)}.section.revealed .sd-tl .sd-flower{transform:scaleY(-1)}.section.revealed .sd-tr .sd-flower{transform:scale(-1)}@media (prefers-reduced-motion:reduce){.sd-corner{transition:opacity .4s}}@media (width<=430px){.sd-slot{width:138px;height:138px}.sd-ornamen{width:124px}.sd-flower{width:116px}}@media (width<=360px){.sd-slot{width:120px;height:120px}.sd-ornamen{width:108px}.sd-flower{width:100px}}.opening-doa{background:var(--cream-light);padding:0}.opening-doa-inner{padding:var(--space-3xl) var(--space-xl) var(--space-2xl);text-align:center;justify-content:center;align-items:center;gap:var(--space-md);z-index:2;flex-direction:column;min-height:70vh;display:flex;position:relative}.opening-rumah-gadang{width:110px;height:110px;margin-bottom:var(--space-sm);filter:drop-shadow(0 4px 8px #3c0a0a2e);animation:4s ease-in-out infinite float}.opening-rumah-gadang img{object-fit:contain;width:100%;height:100%}.opening-title{margin-bottom:var(--space-xs);font-size:36px}.opening-arabic{color:var(--burgundy-deep);text-align:center;max-width:380px;margin:var(--space-sm) 0;direction:rtl;font-size:28px;line-height:2.2}.opening-translation{color:var(--text-secondary);text-align:center;max-width:340px;font-size:14px;font-style:italic;line-height:1.8}.opening-source{color:var(--gold-deep);margin-top:var(--space-sm);letter-spacing:1px;font-size:13px;font-weight:500}.opening-doa .opening-rumah-gadang,.opening-doa .opening-title,.opening-doa .opening-arabic,.opening-doa .opening-translation,.opening-doa .opening-source{opacity:0;transition:all .6s;transform:translateY(20px)}.opening-doa.revealed .opening-rumah-gadang{opacity:1;transition-delay:.1s;transform:translateY(0)}.opening-doa.revealed .opening-title{opacity:1;transition-delay:.2s;transform:translateY(0)}.opening-doa.revealed .opening-arabic{opacity:1;transition-delay:.3s;transform:translateY(0)}.opening-doa.revealed .opening-translation{opacity:1;transition-delay:.5s;transform:translateY(0)}.opening-doa.revealed .opening-source{opacity:1;transition-delay:.7s;transform:translateY(0)}@media (width<=360px){.opening-arabic{font-size:22px}.opening-rumah-gadang{width:90px;height:90px}}.couple-section{background:var(--cream);padding:0}.couple-inner{padding:var(--space-3xl) var(--space-lg);z-index:2;position:relative}.couple-card{align-items:center;gap:var(--space-sm);text-align:center;flex-direction:column;display:flex}.couple-photo-frame{border-radius:var(--radius-full);border:3px solid var(--gold-rich);background:linear-gradient(135deg, var(--cream-light), var(--ivory));width:170px;height:170px;box-shadow:var(--shadow-burgundy-md), inset 0 0 0 1px var(--burgundy-muted);margin-bottom:var(--space-md);padding:5px;position:relative;overflow:hidden}.couple-photo-frame:after{content:"";border-radius:var(--radius-full);border:1px solid var(--gold-pale);pointer-events:none;z-index:2;position:absolute;inset:5px}.couple-photo-frame img{object-fit:cover;border-radius:var(--radius-full);z-index:1;width:100%;height:100%;position:relative}.couple-name{color:var(--burgundy-primary);text-shadow:1px 1px 2px #3c0a0a1a;margin-top:var(--space-xs);font-size:34px}.couple-order{color:var(--text-muted);font-size:13px;font-style:italic}.couple-parents{color:var(--text-secondary);max-width:280px;font-size:14px;font-weight:400;line-height:1.6}.couple-ig{color:var(--gold-deep);margin-top:var(--space-sm);border:1px solid var(--border-gold);border-radius:var(--radius-xl);transition:all var(--transition-normal);letter-spacing:.5px;align-items:center;gap:6px;padding:5px 14px;font-size:12px;display:inline-flex}.couple-ig:hover{color:var(--cream);background:var(--burgundy-primary);border-color:var(--burgundy-primary)}.couple-divider{padding:var(--space-xl) 0;justify-content:center;align-items:center;display:flex;position:relative}.couple-divider:before,.couple-divider:after{content:"";background:var(--gold-rich-gradient-h);flex:1;max-width:100px;height:1px}.couple-heart{font-family:var(--font-script);color:var(--gold-rich);padding:0 var(--space-md);text-shadow:2px 2px 4px #9c7a2c4d;font-size:48px}.couple-section .couple-groom,.couple-section .couple-bride,.couple-section .couple-divider{opacity:0;transition:all .7s;transform:translateY(30px)}.couple-section.revealed .couple-groom{opacity:1;transition-delay:.1s;transform:translateY(0)}.couple-section.revealed .couple-divider{opacity:1;transition-delay:.3s;transform:translateY(0)}.couple-section.revealed .couple-bride{opacity:1;transition-delay:.5s;transform:translateY(0)}.event-section{background:var(--cream-light);padding:var(--space-3xl) var(--space-lg)}.event-section .section-inner{z-index:2}.event-rumah-gadang{width:150px;height:150px;margin:var(--space-md) auto var(--space-xl);filter:drop-shadow(0 4px 8px #3c0a0a2e);animation:4s ease-in-out infinite float}.event-rumah-gadang img{object-fit:contain;width:100%;height:100%}.event-card{text-align:center;padding:var(--space-xl) var(--space-lg);background:var(--bg-overlay);border:1px solid var(--border-gold);border-radius:var(--radius-lg);margin-bottom:var(--space-md);box-shadow:var(--shadow-md);position:relative}.event-card:before{content:"";border:1px solid var(--border-gold);border-radius:calc(var(--radius-lg) - 6px);pointer-events:none;opacity:.5;position:absolute;inset:6px}.event-icon{margin-bottom:var(--space-md);color:var(--gold-rich);justify-content:center;align-items:center;display:inline-flex}.event-icon svg{stroke:var(--gold-rich)}.event-name{color:var(--burgundy-primary);margin-bottom:var(--space-sm);letter-spacing:1px;font-size:24px;font-weight:600}.event-date{color:var(--text-primary);margin-bottom:var(--space-xs);font-size:15px;font-weight:500}.event-time{color:var(--text-secondary);font-size:14px;font-weight:400}.event-venue{font-family:var(--font-heading);color:var(--burgundy-primary);margin-bottom:var(--space-xs);font-size:15px;font-weight:600}.event-address{color:var(--text-secondary);font-size:13px;line-height:1.6}.event-separator{text-align:center;padding:var(--space-md) 0;color:var(--gold-rich);font-size:16px}.event-section .event-rumah-gadang{opacity:0;transition:opacity .6s}.event-section.revealed .event-rumah-gadang{opacity:1;transition-delay:.15s}.event-section .event-card{opacity:0;transition:all .6s;transform:translateY(30px)}.event-section.revealed .event-card{opacity:1;transition-delay:.2s;transform:translateY(0)}.event-section.revealed .event-separator+.event-card{transition-delay:.4s}.event-section.revealed .event-separator{animation:.6s .3s both fadeIn}.countdown-section{background:var(--cream);padding:var(--space-2xl) var(--space-lg)}.countdown-section .section-inner{z-index:2}.countdown-grid{gap:var(--space-md);max-width:360px;margin:var(--space-lg) auto 0;grid-template-columns:repeat(4,1fr);display:grid}.countdown-box{align-items:center;gap:var(--space-xs);padding:var(--space-md) var(--space-sm);background:linear-gradient(160deg, var(--cream-light) 0%, var(--ivory) 100%);border:1px solid var(--border-gold);border-radius:var(--radius-md);box-shadow:var(--shadow-sm), inset 0 0 0 1px #c9a54726;flex-direction:column;display:flex;position:relative}.countdown-box:before{content:"";border-radius:calc(var(--radius-md) - 3px);pointer-events:none;border:1px solid #c9a5474d;position:absolute;inset:3px}.countdown-number{font-family:var(--font-heading);color:var(--burgundy-primary);text-shadow:1px 1px 2px #3c0a0a1a;font-size:32px;font-weight:700;line-height:1}.countdown-label{color:var(--gold-deep);text-transform:uppercase;letter-spacing:1.5px;font-size:11px;font-weight:500}.countdown-expired{color:var(--burgundy-primary);text-align:center;margin-top:var(--space-lg);font-size:24px}.countdown-section .countdown-grid{opacity:0;transition:all .6s;transform:translateY(20px)}.countdown-section.revealed .countdown-grid{opacity:1;transition-delay:.2s;transform:translateY(0)}.countdown-box:last-child .countdown-number{animation:1s ease-in-out infinite pulse}@media (width<=360px){.countdown-number{font-size:26px}.countdown-grid{gap:var(--space-sm)}}.location-section{background:var(--cream);padding:0}.location-inner{padding:var(--space-3xl) var(--space-lg);z-index:2;position:relative}.location-map-container{margin:var(--space-lg) 0;border-radius:var(--radius-lg);border:2px solid var(--gold-rich);box-shadow:var(--shadow-md);overflow:hidden}.location-map-wrapper{position:relative}.location-close-btn{border-radius:var(--radius-full);background:var(--overlay-dark);width:36px;height:36px;color:var(--cream);z-index:10;border:1px solid var(--gold-rich);cursor:pointer;transition:background var(--transition-fast);justify-content:center;align-items:center;font-size:14px;display:flex;position:absolute;top:12px;left:50%;transform:translate(-50%)}.location-close-btn:hover{background:var(--overlay-dark-strong)}.location-iframe{width:100%;height:300px;display:block}.location-show-map-btn{width:100%;padding:var(--space-2xl) var(--space-lg);align-items:center;gap:var(--space-md);background:linear-gradient(135deg, var(--cream-light), var(--ivory));cursor:pointer;transition:all var(--transition-normal);color:var(--burgundy-primary);border:none;flex-direction:column;display:flex}.location-show-map-btn span{color:var(--burgundy-primary);letter-spacing:.5px;font-size:14px;font-weight:500}.location-show-map-btn:hover{background:linear-gradient(135deg, var(--ivory), var(--parchment))}.location-info{text-align:center;margin:var(--space-lg) 0}.location-label{font-family:var(--font-heading);color:var(--burgundy-primary);margin-bottom:var(--space-sm);letter-spacing:1px;font-size:16px;font-weight:600}.location-address{color:var(--text-secondary);max-width:320px;margin:0 auto;font-size:13px;line-height:1.7}.location-direction-btn{margin:0 auto;display:flex}.location-section .section-inner{opacity:0;transition:all .7s;transform:translateY(30px)}.location-section.revealed .section-inner{opacity:1;transform:translateY(0)}.gift-section{background:var(--cream-light);padding:0}.gift-inner{padding:var(--space-3xl) var(--space-lg);z-index:2;position:relative}.gift-text{text-align:center;color:var(--text-secondary);max-width:340px;margin:0 auto var(--space-xl);font-size:14px;line-height:1.7}.bank-card{background:linear-gradient(145deg, var(--cream) 0%, var(--ivory) 50%, var(--parchment) 100%);border-radius:var(--radius-lg);padding:var(--space-xl);box-shadow:var(--shadow-md), inset 0 0 0 1px var(--gold-rich);margin-bottom:var(--space-lg);border:1px solid var(--border-gold-strong);position:relative;overflow:hidden}.bank-card:before{content:"";pointer-events:none;background:radial-gradient(circle,#c9a5472e,#0000 70%);width:80%;height:80%;position:absolute;top:-40%;right:-40%}.bank-card:after{content:"";border-radius:calc(var(--radius-lg) - 6px);pointer-events:none;border:1px dashed #c9a54759;position:absolute;inset:6px}.bank-card-header{margin-bottom:var(--space-md);z-index:1;justify-content:space-between;align-items:center;display:flex;position:relative}.bank-name{font-family:var(--font-heading);color:var(--burgundy-primary);letter-spacing:2px;font-size:14px;font-weight:600}.bank-logo-placeholder{background:linear-gradient(135deg, var(--burgundy-light), var(--burgundy-primary));border-radius:var(--radius-sm);border:1px solid var(--gold-rich);padding:6px 14px}.bank-logo-text{font-family:var(--font-heading);color:var(--cream);letter-spacing:1px;font-size:14px;font-weight:700}.bank-chip{margin-bottom:var(--space-lg);z-index:1;position:relative}.bank-number{color:var(--burgundy-deep);letter-spacing:2px;margin-bottom:var(--space-md);z-index:1;font-family:Courier New,monospace;font-size:18px;font-weight:600;position:relative}.bank-copy-btn{color:var(--cream);background:var(--burgundy-gradient);border:1px solid var(--gold-rich);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);margin-bottom:var(--space-md);z-index:1;padding:6px 16px;font-size:12px;font-weight:500;position:relative}.bank-copy-btn:hover{background:linear-gradient(135deg, var(--burgundy-primary), var(--burgundy-deep));border-color:var(--gold-pale)}.bank-holder{color:var(--text-secondary);z-index:1;font-family:Courier New,monospace;font-size:14px;position:relative}.gift-confirm-btn{margin:0 auto;display:flex}.gift-section .bank-card{opacity:0;transition:all .6s;transform:scale(.9)}.gift-section.revealed .bank-card{opacity:1;transition-delay:.2s;transform:scale(1)}.wish-form{gap:var(--space-md);margin:var(--space-lg) 0;flex-direction:column;display:flex}.wish-field{gap:var(--space-xs);flex-direction:column;display:flex}.wish-label{color:var(--burgundy-primary);letter-spacing:.3px;font-size:13px;font-weight:500}.wish-input,.wish-select,.wish-textarea{border:1px solid var(--border-gold);border-radius:var(--radius-md);background:var(--cream);width:100%;color:var(--text-primary);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);padding:12px 14px;font-size:14px}.wish-input:focus,.wish-select:focus,.wish-textarea:focus{border-color:var(--gold-rich);box-shadow:0 0 0 3px #c9a54726}.wish-input::placeholder,.wish-textarea::placeholder{color:var(--text-muted)}.wish-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239C7A2C' stroke-width='2'%3E%3Cpolyline points='6,9 12,15 18,9'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}.wish-textarea{resize:vertical;min-height:80px}.wish-submit-btn{width:100%;margin-top:var(--space-sm);padding:14px;font-size:15px}.wish-success{text-align:center;color:var(--success);background:var(--success-bg);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);border:1px solid #2e7d4f4d;font-size:14px;font-weight:500;animation:.3s fadeIn}.wishlist{margin-top:var(--space-lg)}.wishlist-count{color:var(--gold-deep);margin-bottom:var(--space-md);letter-spacing:.5px;font-size:13px;font-weight:500}.wishlist-scroll{gap:var(--space-md);max-height:360px;padding-right:var(--space-xs);flex-direction:column;display:flex;overflow-y:auto}.wishlist-empty{text-align:center;padding:var(--space-xl) 0;color:var(--text-muted);font-size:14px;font-style:italic}.wish-card{padding:var(--space-md);background:var(--cream);border-radius:var(--radius-md);border:1px solid var(--border-gold);box-shadow:var(--shadow-sm);animation:.3s fadeUp}.wish-card-header{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);display:flex}.wish-avatar{border-radius:var(--radius-full);background:var(--burgundy-gradient);width:38px;height:38px;color:var(--cream);font-family:var(--font-heading);border:2px solid var(--gold-rich);flex-shrink:0;justify-content:center;align-items:center;font-size:16px;font-weight:600;display:flex}.wish-card-info{flex-direction:column;gap:2px;display:flex}.wish-card-name{color:var(--burgundy-primary);font-size:14px;font-weight:600}.wish-badge{border-radius:var(--radius-sm);width:fit-content;padding:2px 8px;font-size:11px;font-weight:500;display:inline-block}.badge-hadir{background:var(--success-bg);color:var(--success)}.badge-tidak{background:var(--danger-bg);color:var(--danger)}.badge-ragu{color:var(--gold-deep);background:#c9a54726}.wish-card-message{color:var(--text-secondary);margin-bottom:var(--space-sm);font-size:13px;line-height:1.6}.wish-card-time{color:var(--text-muted);font-size:11px}.wishlist-scroll::-webkit-scrollbar{width:3px}.wishlist-scroll::-webkit-scrollbar-track{background:0 0}.wishlist-scroll::-webkit-scrollbar-thumb{background:var(--gold-rich);border-radius:3px}.wishes-section{background:var(--cream-light);padding:var(--space-3xl) var(--space-lg)}.wishes-section .section-inner{z-index:2;opacity:0;transition:all .7s;transform:translateY(30px)}.wishes-section.revealed .section-inner{opacity:1;transform:translateY(0)}.closing-section{background:var(--cream);padding:0}.closing-inner{padding:var(--space-3xl) var(--space-lg);z-index:2;position:relative}.closing-content{text-align:center;align-items:center;gap:var(--space-md);flex-direction:column;display:flex}.closing-message{color:var(--text-secondary);max-width:360px;font-size:14px;font-style:italic;line-height:1.8}.closing-regards{color:var(--text-primary);margin-top:var(--space-md);font-size:15px;font-style:italic;font-weight:500}.closing-names{color:var(--burgundy-primary);text-shadow:1px 2px 3px #3c0a0a26;font-size:42px}.closing-branding{color:var(--gold-deep);letter-spacing:.5px;font-size:13px;font-weight:500}.closing-social{gap:var(--space-md);margin:var(--space-md) 0;display:flex}.social-icon{border-radius:var(--radius-full);width:42px;height:42px;color:var(--burgundy-primary);background:var(--cream);transition:all var(--transition-normal);border:1px solid var(--border-gold);justify-content:center;align-items:center;display:flex}.social-icon:hover{color:var(--cream);background:var(--burgundy-primary);border-color:var(--gold-rich);box-shadow:var(--shadow-burgundy-md);transform:translateY(-2px)}.closing-brand-logo{margin-top:var(--space-md);flex-direction:column;align-items:center;display:flex}.brand-b{font-family:var(--font-heading);color:var(--burgundy-primary);font-size:26px;font-weight:700}.brand-sub{letter-spacing:4px;color:var(--gold-deep);text-transform:uppercase;font-size:9px;font-weight:600}.closing-music{margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--border-gold)}.music-label{color:var(--gold-deep);margin-bottom:2px;font-size:12px}.music-title{color:var(--text-muted);font-size:11px;font-style:italic}.closing-section .closing-content>*{opacity:0;transition:all .5s;transform:translateY(15px)}.closing-section.revealed .closing-content>*{opacity:1;transform:translateY(0)}.closing-section.revealed .closing-content>:first-child{transition-delay:.1s}.closing-section.revealed .closing-content>:nth-child(2){transition-delay:.2s}.closing-section.revealed .closing-content>:nth-child(3){transition-delay:.3s}.closing-section.revealed .closing-content>:nth-child(4){transition-delay:.4s}.closing-section.revealed .closing-content>:nth-child(5){transition-delay:.5s}.closing-section.revealed .closing-content>:nth-child(6){transition-delay:.6s}.closing-section.revealed .closing-content>:nth-child(7){transition-delay:.7s}.closing-section.revealed .closing-content>:nth-child(8){transition-delay:.8s}.audio-player{z-index:90;border-radius:var(--radius-full);background:var(--burgundy-gradient);-webkit-backdrop-filter:blur(10px);width:52px;height:52px;color:var(--cream);cursor:pointer;border:2px solid var(--gold-rich);box-shadow:var(--shadow-burgundy-md);transition:all var(--transition-normal);justify-content:center;align-items:center;display:flex;position:fixed;bottom:24px;right:24px}.audio-player:hover{box-shadow:var(--shadow-burgundy-lg);border-color:var(--gold-pale);transform:scale(1.08)}.audio-player:focus-visible{outline:2px solid var(--gold-pale);outline-offset:3px}.audio-player.playing{border-color:var(--gold-pale);animation:2s ease-in-out infinite audioPulse}.audio-icon{justify-content:center;align-items:center;display:flex}.audio-bars{align-items:flex-end;gap:2px;height:12px;display:flex;position:absolute;bottom:-8px}.audio-bars span{background:var(--gold-rich);border-radius:2px;width:3px;animation:.8s ease-in-out infinite audioBar}.audio-bars span:first-child{height:6px;animation-delay:0s}.audio-bars span:nth-child(2){height:10px;animation-delay:.2s}.audio-bars span:nth-child(3){height:4px;animation-delay:.4s}@keyframes audioBar{0%,to{transform:scaleY(.5)}50%{transform:scaleY(1.2)}}@keyframes audioPulse{0%,to{box-shadow:0 4px 20px #8b1a1a40}50%{box-shadow:0 4px 32px #c9a54773}}.app{background:var(--cream);width:100%;max-width:500px;min-height:100vh;margin:0 auto;position:relative;overflow:hidden}.app:before{content:"";background:var(--bg-pattern);pointer-events:none;z-index:0;position:fixed;inset:0}.invitation-content{z-index:1;position:relative}.invitation-content.hidden{display:none}.invitation-content>.section{background-color:var(--cream);position:relative}.invitation-content>.section:before{content:"";pointer-events:none;z-index:1;background-image:url(/assets/framebackground-BK-FmpU6.png);background-position:50%;background-repeat:no-repeat;background-size:100% 100%;position:absolute;inset:0}.section-cream{background:var(--cream-light)}.section-ivory{background:var(--ivory)}.corner-decor{pointer-events:none;z-index:2;width:100px;height:100px;position:absolute}.corner-decor:before,.corner-decor:after{content:"";position:absolute}.corner-tl{top:0;left:0}.corner-tl:before{border-top:2px solid var(--gold-rich);border-left:2px solid var(--gold-rich);opacity:.7;border-top-left-radius:18px;width:50px;height:50px;top:8px;left:8px}.corner-tl:after{border-top:1px solid var(--gold-pale);border-left:1px solid var(--gold-pale);opacity:.5;border-top-left-radius:10px;width:30px;height:30px;top:16px;left:16px}.corner-tr{top:0;right:0}.corner-tr:before{border-top:2px solid var(--gold-rich);border-right:2px solid var(--gold-rich);opacity:.7;border-top-right-radius:18px;width:50px;height:50px;top:8px;right:8px}.corner-tr:after{border-top:1px solid var(--gold-pale);border-right:1px solid var(--gold-pale);opacity:.5;border-top-right-radius:10px;width:30px;height:30px;top:16px;right:16px}.corner-bl{bottom:0;left:0}.corner-bl:before{border-bottom:2px solid var(--gold-rich);border-left:2px solid var(--gold-rich);opacity:.7;border-bottom-left-radius:18px;width:50px;height:50px;bottom:8px;left:8px}.corner-bl:after{border-bottom:1px solid var(--gold-pale);border-left:1px solid var(--gold-pale);opacity:.5;border-bottom-left-radius:10px;width:30px;height:30px;bottom:16px;left:16px}.corner-br{bottom:0;right:0}.corner-br:before{border-bottom:2px solid var(--gold-rich);border-right:2px solid var(--gold-rich);opacity:.7;border-bottom-right-radius:18px;width:50px;height:50px;bottom:8px;right:8px}.corner-br:after{border-bottom:1px solid var(--gold-pale);border-right:1px solid var(--gold-pale);opacity:.5;border-bottom-right-radius:10px;width:30px;height:30px;bottom:16px;right:16px}.floral-decor{display:none}.oval-frame{padding:var(--space-3xl) var(--space-xl);flex-direction:column;align-items:center;display:flex;position:relative}.oval-frame:before{content:"";border:2px solid var(--border-gold);pointer-events:none;border-radius:50%;width:85%;height:80%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@media (width>=501px){.app{box-shadow:var(--shadow-xl)}}@media (width>=768px){body{background:linear-gradient(135deg,#2a0808 0%,#5c0a0a 50%,#2a0808 100%) fixed;justify-content:center;display:flex}body:before{content:"";background-image:var(--bg-pattern);opacity:.6;z-index:0;pointer-events:none;background-repeat:repeat;position:fixed;inset:0}.app{z-index:1;position:relative}}
