:root{--color-bg-ivory: #F9F0E0;--color-bg-ivory-light: #FDFBF7;--color-bg-card: #FFFFFF;--color-bg-card-alt: #FAF4EB;--color-gold-primary: #A67D2B;--color-gold-rich: #B48C3D;--color-gold-light: #D8BA72;--color-gold-champagne: #E8D3A7;--color-gold-dark: #8C643C;--color-gold-deep: #6A5140;--color-maroon: #5A0F1B;--color-maroon-dark: #3F0B13;--color-text-main: #3D2619;--color-text-sub: #6A5140;--color-text-muted: #8C7666;--color-border-gold: rgba(180, 140, 61, .38);--color-border-gold-strong: #D8BA72;--color-shadow-gold: rgba(166, 125, 43, .12);--color-shadow-gold-hover: rgba(166, 125, 43, .22)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background-color:var(--color-bg-ivory);overflow-x:clip}html.invitation-closed,body.invitation-closed{overflow:hidden!important;height:100vh!important;max-height:100vh!important;touch-action:none!important;overscroll-behavior:none!important}body{color:var(--color-text-main);background-color:var(--color-bg-ivory);font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;user-select:none;-webkit-user-select:none}#root{overflow-x:clip;width:100%}@font-face{font-family:Marquis;src:url(/assets/Marquis-QpZuArfP.ttf) format("truetype");font-weight:400;font-style:normal}.heart{pointer-events:none;z-index:99999;position:fixed;transform:rotate(45deg);animation:floatHeart 1.15s cubic-bezier(.22,1,.36,1) forwards;filter:drop-shadow(0 2px 6px rgba(180,140,61,.5));will-change:transform,opacity}.heart.burst-heart{animation:burstHeart 1.25s cubic-bezier(.25,1,.5,1) forwards}.heart:before,.heart:after{content:"";background-color:inherit;border-radius:50%;width:100%;height:100%;position:absolute}.heart:before{top:-50%;left:0}.heart:after{top:0;left:-50%}@keyframes floatHeart{0%{opacity:.95;transform:translate(0) scale(.7) rotate(45deg)}25%{opacity:1;transform:translate(var(--drift-x, 0px),-16px) scale(1.05) rotate(45deg)}to{opacity:0;transform:translate(calc(var(--drift-x, 0px) * 1.6),-58px) scale(1.3) rotate(45deg)}}@keyframes burstHeart{0%{opacity:1;transform:translate(0) scale(.6) rotate(45deg)}40%{opacity:1;transform:translate(var(--burst-x, 0px),var(--burst-y, -20px)) scale(1.2) rotate(45deg)}to{opacity:0;transform:translate(calc(var(--burst-x, 0px) * 1.35),calc(var(--burst-y, -20px) - 35px)) scale(1.4) rotate(45deg)}}.opening-video-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;background-color:#dacebf;display:flex;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;opacity:1;transition:opacity .85s cubic-bezier(.4,0,.2,1)}.opening-video-overlay.fade-out{opacity:0;pointer-events:none}#openingVideo{width:100%;max-width:none;height:100%;max-height:100vh;max-height:100dvh;object-fit:cover;display:block;pointer-events:none;background:transparent;border:none!important;outline:none!important;border-radius:0!important;box-shadow:none!important}.wei-tap-wrap{position:absolute;bottom:27%;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:7px;animation:weiTapIn 1.2s .8s both;pointer-events:none;z-index:5}@keyframes weiTapIn{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.wei-tap-label{font-family:Cinzel,Ovo,Georgia,serif;font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:#8c643cd9;animation:weiPulse 2.4s 1.6s ease-in-out infinite;white-space:nowrap}@keyframes weiPulse{0%,to{opacity:.45;letter-spacing:.28em}50%{opacity:1;letter-spacing:.32em}}.wei-chevron{width:10px;height:10px;border-right:1.5px solid rgba(140,100,60,.7);border-top:1.5px solid rgba(140,100,60,.7);transform:rotate(-45deg);animation:weiChevron 2.4s 1.9s ease-in-out infinite}@keyframes weiChevron{0%,to{transform:rotate(-45deg) translate(0);opacity:.6}50%{transform:rotate(-45deg) translate(2px,-2px);opacity:1}}.hero-section{background-color:#f9f0e0;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;position:relative;overflow:visible;padding:0;margin:0;padding-top:0!important;margin-top:0!important}.hero-video-bg-container{position:relative;top:0;margin:0 auto;padding:0;width:100%;max-width:450px;z-index:1;pointer-events:none;overflow:visible;display:flex;justify-content:center;align-items:flex-start}.hero-video-bg{width:100%;height:auto;object-fit:cover;display:block;margin:0;padding:0}.hero-video-radial-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at center,#fff9eb73,#ffe7c026 55%,#f9f0e000 80%);pointer-events:none;z-index:2}.hero-video-bg-container.v1-mode{top:auto;bottom:0;height:48vh;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 25%);mask-image:linear-gradient(to bottom,transparent 0%,black 25%)}.hero-arch-frame{position:absolute;top:0;left:50%;transform:translate(-50%);width:100%;max-width:650px;height:100vh;object-fit:cover;object-position:top center;z-index:2;pointer-events:none}.hero-flowers-bottom-wrap{position:absolute;bottom:-20px;left:50%;transform:translate(-50%);width:100%;max-width:650px;display:flex;justify-content:space-between;align-items:flex-end;pointer-events:none;z-index:5}.hero-flower-left{width:clamp(140px,28vw,220px);height:auto;transform-origin:bottom left;animation:gentleLeafSway 5.5s ease-in-out infinite alternate;filter:drop-shadow(0 4px 14px rgba(140,100,60,.18))}.hero-flower-right{width:clamp(140px,28vw,220px);height:auto;transform-origin:bottom right;animation:gentleLeafSway 6s ease-in-out infinite alternate-reverse;filter:drop-shadow(0 4px 14px rgba(140,100,60,.18))}@keyframes gentleLeafSway{0%{transform:rotate(0) scale(1)}to{transform:rotate(2deg) scale(1.03)}}.hero-sparkles-container{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:5}.sparkle-star{position:absolute;color:#d8ba72;filter:drop-shadow(0 0 4px rgba(216,186,114,.6));-webkit-user-select:none;user-select:none;animation:lightSparkleTwinkle 2.8s ease-in-out infinite alternate}.sp-1{top:12%;left:6%;font-size:1.15rem}.sp-2{top:16%;right:8%;font-size:1rem}.sp-3{top:54%;left:8%;font-size:1.1rem}.v1-content{padding-top:14vh!important}.hero-content-scene{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;max-width:450px;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;z-index:3;margin:0 auto;padding:20px 20px clamp(36px,7vh,60px) 20px;opacity:0;transform:translateY(16px);transition:opacity 1.2s cubic-bezier(.16,1,.3,1),transform 1.2s cubic-bezier(.16,1,.3,1);box-sizing:border-box;pointer-events:none}.hero-content-scene.reveal{opacity:1;transform:translateY(0)}.hero-center-group{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;margin-top:-3.5vh}.hero-top-text-wrap{display:flex;flex-direction:column;align-items:center;gap:2px}.hero-souls-tagline{font-family:Great Vibes,Marquis,Alex Brush,cursive;font-size:clamp(2.4rem,6.8vw,3.4rem);letter-spacing:.02em;color:#a67d2b;font-weight:400;margin:0;line-height:1.1;text-shadow:0 1px 6px rgba(255,255,255,.95)}.hero-date-badge{display:inline-flex;align-items:center;justify-content:center;margin-top:2px}.hero-date-text{font-family:Cormorant Garamond,Cinzel,serif;font-size:clamp(1.35rem,3.8vw,1.75rem);letter-spacing:.1em;font-weight:600;color:#a67d2b;text-shadow:0 1px 6px rgba(255,255,255,.95)}.hero-names-wrap{display:flex;flex-direction:column;align-items:center;justify-content:center;margin:clamp(12px,2.5vh,24px) 0 clamp(14px,2.8vh,24px) 0}h1.hero-names-cursive{color:#a67d2b;font-family:Great Vibes,Marquis,Alex Brush,cursive;font-size:clamp(4rem,12vw,6rem);font-weight:400;line-height:1.05;letter-spacing:.02em;margin:0;text-align:center;text-shadow:0 2px 14px rgba(255,250,240,.95),0 0 4px rgba(166,125,43,.25)}.hero-name-part{display:block}.hero-ampersand{color:#a67d2b;font-family:Great Vibes,Marquis,Alex Brush,cursive;font-size:clamp(2.2rem,6vw,3.2rem);font-weight:400;display:block;margin:clamp(2px,.5vh,8px) 0;line-height:1}.scroll-down-box{display:inline-flex;flex-direction:row;align-items:center;justify-content:center;gap:10px;text-decoration:none;cursor:pointer;background:linear-gradient(135deg,#b48c3d,#d8ba72,#9b722b);border:1.5px solid #FFF5D6;border-radius:999px;padding:10px 26px;color:#fff;opacity:0;pointer-events:none;transform:translateY(12px);transition:all .5s cubic-bezier(.16,1,.3,1);margin-top:clamp(10px,2vh,22px);box-shadow:0 6px 20px #a67d2b6b,0 0 16px #d8ba7259;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);-webkit-user-select:none;user-select:none}.scroll-down-box.show{opacity:1;pointer-events:auto;transform:translateY(0)}.scroll-down-box:hover{transform:translateY(-2px) scale(1.04);background:linear-gradient(135deg,#c49a46,#e8cb85,#ac8134);box-shadow:0 8px 28px #a67d2b8c,0 0 22px #d8ba7280;border-color:#fff}.scroll-down-box:active{transform:translateY(0) scale(.98)}.scroll-down-label{font-family:Cinzel,Montserrat,Georgia,serif;font-size:clamp(.78rem,2.4vw,.88rem);font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#fff;text-shadow:0 1px 2px rgba(60,35,10,.45);line-height:1;display:inline-block}.scroll-arrow-svg{display:flex;align-items:center;justify-content:center;animation:sacredArrowFloat 1.8s ease-in-out infinite}.sacred-chevron-arrow{width:14px;height:10px;display:block}@keyframes sacredArrowFloat{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}#weiAudioBtn,.music-toggle{position:fixed;bottom:22px;right:22px;width:54px;height:54px;background:var(--color-maroon);border:1.5px solid rgba(216,186,114,.6);border-radius:50%;display:flex;justify-content:center;align-items:center;z-index:2147483647;cursor:pointer;box-shadow:0 4px 18px #5a0f1b73;transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.music-toggle:hover{background:var(--color-maroon-dark);transform:scale(1.1);box-shadow:0 6px 22px #5a0f1b99}.music-toggle.playing{animation:2s ease-in-out infinite musicPulseSacred}@keyframes musicPulseSacred{0%,to{box-shadow:0 0 #5a0f1b80}50%{box-shadow:0 0 0 12px #5a0f1b00}}.music-icon-svg{color:#fff;font-size:24px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.sacred-paper-card-container{position:relative;width:100%;max-width:100%;margin:-47px auto 35px;z-index:10;box-sizing:border-box;overflow:visible;display:flex;justify-content:center;align-items:center}.sacred-flower-decor{position:absolute;pointer-events:none;z-index:99}.sacred-flower-decor.left-sway{top:-187px;left:calc(50% - 241px);width:224px;height:auto;aspect-ratio:32 / 49;object-fit:contain;transform-origin:top left;animation:sacredLeftFlowerBreathe 4s ease-in-out infinite}.sacred-flower-decor.right-sway{top:-206px;left:calc(50% + 5px);width:236px;height:auto;aspect-ratio:236 / 359;object-fit:contain;transform-origin:top right;animation:sacredRightFlowerBreathe 4s ease-in-out infinite}@keyframes sacredLeftFlowerBreathe{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(1.06) rotate(2deg)}}@keyframes sacredRightFlowerBreathe{0%,to{transform:scale(1) rotate(0)}50%{transform:scale(1.04) rotate(-2deg)}}@media(max-width:768px){.sacred-flower-decor.left-sway{left:calc(50% - 237px);top:-195px;width:218px}.sacred-flower-decor.right-sway{left:calc(50% + 5px);top:-206px;width:230px}}.sacred-paper-sheet{position:relative;width:744px;min-width:744px;flex-shrink:0;height:487px;min-height:477px;display:flex;align-items:center;justify-content:center;box-sizing:border-box;overflow:visible}@media screen and (max-width:959px){.sacred-paper-sheet{height:477px;min-height:477px}}.sacred-paper-bg-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:fill;object-position:center center;border-radius:0;border:0;margin:0;padding:0;z-index:1;pointer-events:none}.sacred-paper-content{position:relative;z-index:2;width:100%;max-width:min(520px,100vw);margin:0 auto;padding:clamp(35px,6vw,55px) clamp(20px,4vw,40px) clamp(20px,4vw,40px);text-align:center;box-sizing:border-box}.sacred-bismillah-arabic{font-family:Amiri,Traditional Arabic,serif;font-size:clamp(1.6rem,4vw,2rem);color:#a67d2b;line-height:1.2;margin-top:clamp(4px,1vh,8px);margin-bottom:clamp(10px,2vh,15px);font-weight:700;text-shadow:0 1px 3px rgba(255,255,255,.95),0 0 10px rgba(216,186,114,.35)}.sacred-poem-block{display:flex;flex-direction:column;align-items:center;gap:0px;margin-bottom:clamp(12px,2vh,16px)}.sacred-poem-line{font-family:Great Vibes,Marquis,Alex Brush,cursive;font-size:clamp(2rem,5vw,2.6rem);color:#a67d2b;font-weight:400;line-height:1.1;margin:0;letter-spacing:.02em;text-shadow:0 1px 6px rgba(255,255,255,.98),0 0 12px rgba(216,186,114,.35)}.sacred-poem-single .sacred-poem-line{font-size:clamp(1.4rem,4vw,1.8rem);line-height:1.4}.sacred-paper-icon{margin:8px auto 14px;width:clamp(50px,12vw,80px);height:auto;display:flex;justify-content:center;align-items:center}.sacred-paper-icon img{width:100%;height:auto;object-fit:contain}.sacred-welcome-prose-block{max-width:380px;margin:0 auto}.sacred-welcome-heading{font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(1.1rem,3vw,1.3rem);color:#6a5140;font-weight:600;letter-spacing:.02em;margin:0 0 4px;line-height:1.25}.sacred-welcome-text{font-family:Cormorant Garamond,Georgia,serif;font-size:clamp(1.08rem,3.2vw,1.32rem);color:#6a5140;line-height:1.55;margin:0;letter-spacing:.01em;font-weight:400}.details-section{color:var(--color-text-main);text-align:center;background:linear-gradient(#f9f0e0e0,#fdf8efeb),url(/assets/royal-crest-welcome-bg.jpg) center/cover no-repeat;justify-content:flex-start;align-items:center;min-height:75vh;padding:0 0 50px;display:flex;flex-direction:column;position:relative;overflow:visible}.details-section .content-wrapper{width:100%;max-width:540px;margin:0 auto;padding:0 18px;box-sizing:border-box}.details-couple-icon-wrap{display:flex;justify-content:center;align-items:center;margin-bottom:20px}.details-couple-icon-img{width:175px;height:auto;display:block;filter:drop-shadow(0 8px 18px rgba(166,125,43,.22))}.romantic-quote-box{max-width:560px;margin:0 auto 26px;padding:16px 22px;background:#ffffffb3;border-radius:16px;border:1px solid var(--color-border-gold-strong);box-shadow:0 4px 16px var(--color-shadow-gold)}.romantic-quote-text{font-family:Cormorant Garamond,Georgia,serif;font-style:italic;font-size:1.35rem;font-weight:600;line-height:1.6;color:var(--color-gold-primary);margin:0}.invitation-prose-block{max-width:560px;margin:0 auto 32px}.invitation-parents-names{font-family:Cinzel,Cormorant Garamond,Georgia,serif;font-size:1.55rem;font-weight:700;color:var(--color-text-main);line-height:1.4;letter-spacing:.6px;margin:0 0 8px}.invitation-prose-text{font-family:Cormorant Garamond,Georgia,serif;font-style:italic;font-size:1.22rem;color:var(--color-text-sub);line-height:1.5;margin:0}.royal-card{background:var(--color-bg-card);border:1.5px solid var(--color-border-gold-strong);border-radius:20px;padding:26px 22px;box-shadow:0 10px 32px var(--color-shadow-gold);text-align:center;position:relative;transition:transform .3s ease,box-shadow .3s ease}.royal-card:hover{box-shadow:0 14px 40px var(--color-shadow-gold-hover)}.groom-details-card,.bride-details-card{max-width:540px;margin:0 auto 22px}.card-role-badge{font-family:Cinzel,serif;font-size:.76rem;letter-spacing:3px;text-transform:uppercase;color:var(--color-gold-rich);font-weight:700;display:block;margin-bottom:8px}.card-couple-name{font-family:Great Vibes,Alex Brush,cursive;font-size:3.2rem;color:var(--color-text-main);margin:0 0 10px;font-weight:400;text-shadow:0 0 12px rgba(216,186,114,.4)}.card-gold-separator{width:45px;height:1px;background:var(--color-border-gold-strong);margin:10px auto}.card-relation-label{margin:8px 0 0;font-size:.78rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:1.5px;font-weight:600}.card-parents-name{margin:4px 0 0;font-size:1.15rem;color:var(--color-text-main);font-weight:700;font-family:Cormorant Garamond,serif}.with-divider-wrap{display:flex;align-items:center;justify-content:center;gap:16px;margin:18px 0}.with-line{width:50px;height:1px;background:var(--color-border-gold-strong)}.with-word{font-family:Cormorant Garamond,Georgia,serif;font-style:italic;font-size:1.65rem;color:var(--color-gold-rich);font-weight:700}.scratch-section{color:var(--color-text-main);text-align:center;justify-content:center;align-items:center;min-height:100vh;padding:60px 20px;display:flex;position:relative;overflow:hidden;background:var(--color-bg-ivory)}.scratch-section .bg-video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;opacity:.22;filter:sepia(.4) brightness(1.1);pointer-events:none}.scratch-content-wrapper{z-index:3;width:100%;max-width:540px;margin:0 auto}.scratch-script-title{font-family:Cinzel,Cormorant Garamond,serif;font-size:2.2rem;color:var(--color-text-main);font-weight:600;margin-bottom:6px;letter-spacing:.5px}.script-heart-divider{display:flex;align-items:center;justify-content:center;gap:12px;margin:8px auto 14px}.divider-line{width:40px;height:1px;background:var(--color-border-gold-strong)}.divider-heart{color:var(--color-gold-rich);font-size:1.1rem}.scratch-hint-text{font-family:Cormorant Garamond,Georgia,serif;font-style:italic;font-size:1.15rem;color:var(--color-text-sub);margin-bottom:18px}.reveal-btn-container{margin-bottom:22px}.scratch-reveal-pill-btn{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#b48c3d,#8c643c);color:#fff;border:1px solid #F3DE9A;border-radius:999px;padding:10px 24px;font-family:Montserrat,sans-serif;font-size:.85rem;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;cursor:pointer;box-shadow:0 4px 16px var(--color-shadow-gold);transition:all .25s ease}.scratch-reveal-pill-btn:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 8px 24px var(--color-shadow-gold-hover)}.big-heart-presentation{display:flex;justify-content:center;margin:10px auto 26px}.big-heart-card{position:relative;width:320px;height:300px;border-radius:24px;transition:transform .4s ease}.breathing-heart{animation:breathingCard 3.4s ease-in-out infinite}@keyframes breathingCard{0%,to{transform:scale(1)}50%{transform:scale(1.035)}}.scratched-heart-pop{animation:popCelebrate .6s cubic-bezier(.175,.885,.32,1.275)}@keyframes popCelebrate{0%{transform:scale(.92)}50%{transform:scale(1.06)}to{transform:scale(1)}}.big-heart-border{width:100%;height:100%;padding:3px;border-radius:24px;background:linear-gradient(135deg,#f3de9a,#b48c3d,#8c643c);box-shadow:0 12px 36px var(--color-shadow-gold)}.big-heart-inner{position:relative;width:100%;height:100%;border-radius:22px;background:#fff;overflow:hidden;display:flex;align-items:center;justify-content:center}.revealed-heart-content{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 16px;background:radial-gradient(circle,#fffdf9,#faf4eb)}.invited-script{font-family:Great Vibes,Alex Brush,cursive;font-size:2.2rem;color:var(--color-gold-rich);margin-bottom:4px}.revealed-date-main{font-family:Cinzel,Georgia,serif;font-size:1.55rem;font-weight:700;color:var(--color-text-main);margin:4px 0;letter-spacing:.5px}.revealed-day{font-family:Montserrat,sans-serif;font-size:.85rem;letter-spacing:2px;text-transform:uppercase;color:var(--color-gold-dark);font-weight:700;margin-top:4px}.revealed-time{font-family:Montserrat,sans-serif;font-size:.88rem;color:var(--color-maroon);font-weight:700;margin-top:4px}.big-heart-canvas{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:22px;z-index:5;cursor:grab;touch-action:none}.big-heart-canvas:active{cursor:grabbing}.scratch-me-floating-badge{position:absolute;bottom:22px;left:50%;transform:translate(-50%);background:#fffffff2;border:1.5px solid #D8BA72;color:var(--color-gold-rich);font-family:Montserrat,sans-serif;font-size:.8rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:6px 16px;border-radius:20px;display:flex;align-items:center;gap:6px;z-index:6;box-shadow:0 4px 14px #b48c3d59;pointer-events:none;animation:pulseBadge 2.2s ease-in-out infinite}@keyframes pulseBadge{0%,to{transform:translate(-50%) scale(1)}50%{transform:translate(-50%) scale(1.06)}}.scratch-revealed-countdown{margin-top:14px;opacity:0;transform:translateY(18px);transition:all .7s cubic-bezier(.16,1,.3,1);pointer-events:none}.scratch-revealed-countdown.show{opacity:1;transform:translateY(0);pointer-events:auto}.celebration-begins-title{font-family:Cinzel,Cormorant Garamond,serif;font-size:1.6rem;font-weight:600;color:var(--color-gold-primary);margin-bottom:14px}#countdownContainer{display:flex;justify-content:center;align-items:center;gap:12px;margin:18px 0}.time-block{text-align:center;background:#fff;border:1px solid var(--color-border-gold-strong);border-radius:14px;padding:10px 14px;min-width:68px;box-shadow:0 6px 20px var(--color-shadow-gold)}.number-wrap{overflow:hidden;height:48px;display:flex;align-items:center;justify-content:center}.number{font-size:38px;font-family:Ovo,Cormorant Garamond,Georgia,serif;line-height:1.1;display:block;white-space:nowrap;color:var(--color-gold-rich);font-weight:700}.label{font-size:12px;margin-top:4px;font-weight:600;color:var(--color-text-sub);font-family:Montserrat,sans-serif;text-transform:uppercase;letter-spacing:1px}.separator{font-size:32px;color:var(--color-gold-rich);font-family:Ovo,serif;margin-top:-16px}.save-date-pill-wrapper{margin-top:24px;position:relative;display:inline-block}.save-date-pill-btn{display:inline-flex;align-items:center;gap:10px;background:linear-gradient(135deg,#b48c3d,#8c643c);color:#fff;border:1.5px solid #F3DE9A;border-radius:999px;padding:12px 28px;font-family:Montserrat,sans-serif;font-size:.88rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;box-shadow:0 6px 22px var(--color-shadow-gold);transition:all .25s ease}.save-date-pill-btn:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 28px var(--color-shadow-gold-hover)}.cal-simple-dropdown{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(-10px);background:#fff;border:1px solid var(--color-border-gold-strong);border-radius:16px;padding:10px;box-shadow:0 12px 36px #00000026;opacity:0;pointer-events:none;transition:all .3s ease;min-width:240px;z-index:20}.cal-simple-dropdown.show{opacity:1;transform:translate(-50%) translateY(0);pointer-events:auto}.cal-simple-opt{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:10px;color:var(--color-text-main);text-decoration:none;font-size:.88rem;font-weight:600;transition:background .2s ease;width:100%;border:none;background:none;cursor:pointer;text-align:left}.cal-simple-opt:hover{background:var(--color-bg-card-alt);color:var(--color-gold-rich)}.bridegroom-section{padding:30px 18px 45px;display:flex;justify-content:center;background:var(--color-bg-ivory)}.bridegroom-card-box{max-width:540px;width:100%;background:#fff;border:1.5px solid var(--color-border-gold-strong);border-radius:22px;padding:18px;box-shadow:0 12px 36px var(--color-shadow-gold)}.bridegroom-frame{width:100%;border-radius:16px;overflow:hidden;background:var(--color-bg-ivory)}.bridegroom-img{width:100%;height:auto;display:block;object-fit:cover;transition:transform .5s ease}.bridegroom-card-box:hover .bridegroom-img{transform:scale(1.02)}.venue-section{padding:50px 18px 40px;background:linear-gradient(#f9f0e0e0,#fdf8efeb),url(/assets/royal-crest-general-bg.jpg) center/cover no-repeat;text-align:center}.venue-container{max-width:560px;margin:0 auto}.program-details-tag{color:var(--color-gold-rich);font-family:Cinzel,serif;font-size:.82rem;letter-spacing:4px;text-transform:uppercase;display:block;margin-bottom:8px;font-weight:700}.venue-title{font-family:Cinzel,Cormorant Garamond,serif;font-size:2.3rem;color:var(--color-text-main);margin-bottom:30px}.event-card{background:#fff;border:1.5px solid var(--color-border-gold-strong);border-radius:22px;padding:28px 22px;margin-bottom:30px;box-shadow:0 10px 32px var(--color-shadow-gold);text-align:center;position:relative;transition:transform .3s ease,box-shadow .3s ease}.event-card:hover{transform:translateY(-3px);box-shadow:0 14px 40px var(--color-shadow-gold-hover)}.event-card-highlight{border-color:#b48c3d;box-shadow:0 12px 38px #b48c3d38}.event-badge-pill{display:inline-flex;align-items:center;gap:8px;padding:7px 22px;border-radius:999px;font-family:Montserrat,sans-serif;font-size:.82rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:18px}.badge-pill-champagne{background:linear-gradient(135deg,#faf4eb,#e8d3a7);color:var(--color-text-main);border:1px solid var(--color-border-gold-strong)}.badge-pill-gold{background:linear-gradient(135deg,#b48c3d,#8c643c);color:#fff;box-shadow:0 4px 16px #b48c3d59}.event-invitation-prose{font-family:Cormorant Garamond,Georgia,serif;font-style:italic;font-size:1.25rem;font-weight:500;line-height:1.65;color:var(--color-text-main);max-width:500px;margin:0 auto 18px;padding:0 6px}.mehandi-hand-image,.venue-image{max-width:170px;height:auto;margin:8px auto 14px;display:block;filter:drop-shadow(0 6px 14px rgba(166,125,43,.2))}.event-date-text{font-family:Cormorant Garamond,Georgia,serif;font-size:1.8rem;color:var(--color-text-main);margin:8px 0 4px;font-weight:700}.event-time-text{font-family:Montserrat,sans-serif;font-size:1.15rem;color:var(--color-maroon);font-weight:700;letter-spacing:.5px;margin:6px 0 14px}.event-card-divider{height:1px;background:var(--color-border-gold-strong);width:60px;margin:14px auto}.event-venue-title{font-size:1.22rem;font-weight:700;color:var(--color-text-main);margin:10px 0 4px;font-family:Cinzel,serif}.event-venue-address{font-size:.94rem;color:var(--color-text-sub);margin:0 0 20px;line-height:1.5}.map-btn-gold,.map-btn-champagne{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 24px;border-radius:999px;font-family:Montserrat,sans-serif;font-size:.85rem;font-weight:700;text-decoration:none;transition:all .25s ease}.map-btn-gold{background:linear-gradient(135deg,#b48c3d,#8c643c);color:#fff;border:1px solid #F3DE9A;box-shadow:0 4px 16px var(--color-shadow-gold)}.map-btn-champagne{background:#fff;color:var(--color-text-main);border:1.5px solid var(--color-border-gold-strong);box-shadow:0 4px 14px var(--color-shadow-gold)}.map-btn-gold:hover,.map-btn-champagne:hover{transform:translateY(-2px);box-shadow:0 8px 24px var(--color-shadow-gold-hover)}.rsvp-section{padding:40px 18px 30px;text-align:center}.rsvp-container{max-width:520px;margin:0 auto;background:#fff;border:1.5px solid var(--color-border-gold-strong);border-radius:22px;padding:30px 20px;box-shadow:0 10px 32px var(--color-shadow-gold)}.rsvp-title{font-family:Cinzel,Cormorant Garamond,serif;font-size:2rem;color:var(--color-text-main);margin-bottom:6px;font-weight:700}.rsvp-sub{font-family:Cormorant Garamond,Georgia,serif;font-style:italic;font-size:1.15rem;color:var(--color-text-sub);margin-bottom:22px}.rsvp-buttons{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.rsvp-btn{padding:12px 24px;border-radius:999px;font-family:Montserrat,sans-serif;font-size:.92rem;font-weight:700;cursor:pointer;border:1.5px solid transparent;transition:all .25s ease}.rsvp-btn.yes{background:linear-gradient(135deg,#b48c3d,#8c643c);color:#fff;border-color:#f3de9a;box-shadow:0 4px 16px var(--color-shadow-gold)}.rsvp-btn.yes:hover{transform:translateY(-2px);box-shadow:0 8px 24px var(--color-shadow-gold-hover)}.rsvp-btn.no{background:#faf4eb;color:var(--color-text-sub);border-color:var(--color-border-gold-strong)}.rsvp-btn.no:hover{background:#f0e6d4}.rsvp-message{margin-top:18px;font-family:Cormorant Garamond,serif;font-style:italic;font-size:1.2rem;color:var(--color-maroon);font-weight:600;opacity:0;transform:translateY(8px);transition:all .4s ease}.rsvp-message.show{opacity:1;transform:translateY(0)}.compliments-section{padding:30px 18px 40px;text-align:center}.compliments-container{max-width:520px;margin:0 auto}.compliments-header{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:8px}.comp-line{width:45px;height:1px;background:var(--color-border-gold-strong)}.comp-label{font-family:Cinzel,serif;font-size:.88rem;letter-spacing:2.5px;text-transform:uppercase;color:var(--color-gold-rich);font-weight:700}.comp-ornament{color:var(--color-gold-rich);font-size:1.2rem;margin-bottom:20px}.residence-card{margin-top:30px;padding:22px 20px}.residence-tag{font-family:Cinzel,serif;font-size:.76rem;letter-spacing:3px;text-transform:uppercase;color:var(--color-gold-rich);font-weight:700;display:block;margin-bottom:6px}.residence-names{font-size:1.15rem;font-weight:700;color:var(--color-text-main);margin-bottom:6px;font-family:Cormorant Garamond,serif}.residence-address{font-size:.94rem;color:var(--color-text-sub);margin-bottom:12px;line-height:1.5}.residence-phone-pill{display:inline-flex;align-items:center;gap:8px;color:var(--color-maroon);font-size:.94rem;font-weight:700;text-decoration:none;background:#5a0f1b14;border:1px solid rgba(90,15,27,.2);padding:6px 16px;border-radius:20px;transition:all .2s ease}.residence-phone-pill:hover{background:#5a0f1b26}.rsvp-contact-box{margin-top:24px;padding:18px 16px;background:#fff;border:1px dashed var(--color-border-gold-strong);border-radius:18px;box-shadow:0 4px 16px var(--color-shadow-gold)}.rsvp-contact-tag{font-family:Cinzel,serif;font-size:.86rem;letter-spacing:3px;text-transform:uppercase;color:var(--color-gold-rich);font-weight:700;margin-bottom:12px}.rsvp-phones-wrap{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}.rsvp-phone-chip{display:inline-flex;align-items:center;gap:8px;color:var(--color-text-main);font-weight:700;font-size:.98rem;text-decoration:none;background:var(--color-bg-card-alt);padding:8px 18px;border-radius:20px;border:1px solid var(--color-border-gold-strong);transition:all .2s ease}.rsvp-phone-chip:hover{background:#fff;transform:translateY(-1px)}.thankyou-section{padding:30px 0 0;text-align:center}.thankyou-container{max-width:440px;margin:0 auto 30px;padding:0 18px}.thankyou-card-wrapper{position:relative;border-radius:20px;overflow:hidden;box-shadow:0 10px 30px var(--color-shadow-gold)}.thankyou-img{width:100%;height:auto;display:block}.thankyou-card-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;width:90%}.ty-main{font-family:Great Vibes,Alex Brush,cursive;font-size:3.2rem;color:var(--color-gold-rich);text-shadow:0 1px 3px rgba(255,255,255,.9)}.ty-sub{font-family:Cinzel,serif;font-size:.78rem;letter-spacing:2px;text-transform:uppercase;color:var(--color-text-sub);font-weight:600;margin-top:4px}.hope-closing-header{padding:10px 18px 24px}.sacred-hope-ornament{color:var(--color-gold-rich);font-size:.95rem;margin-bottom:8px}.sacred-hope-title{font-family:Cinzel,Cormorant Garamond,serif;font-size:2rem;color:var(--color-text-main);margin-bottom:6px;font-weight:700}.sacred-hope-names{font-family:Great Vibes,Alex Brush,cursive;font-size:2.8rem;color:var(--color-gold-rich);margin:4px 0 6px}.sacred-hope-amp{font-family:Cormorant Garamond,serif;font-size:1.8rem}.sacred-hope-tagline{font-family:Cormorant Garamond,Georgia,serif;font-style:italic;font-size:1.25rem;color:var(--color-text-sub);margin:0}.sacred-bottom-scene{position:relative;width:100%;max-width:520px;margin:0 auto;overflow:hidden}.sacred-bottom-bg{width:100%;height:auto;display:block}.sacred-bottom-gradient{position:absolute;top:0;left:0;width:100%;height:150px;background-image:linear-gradient(0turn,#e8ddcf00,#f9f0e0e6 60%,#f9f0e0);pointer-events:none;z-index:2}.sacred-flower-frame-wrap{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;animation:gentleFrameSway 6s ease-in-out infinite alternate}@keyframes gentleFrameSway{0%{transform:rotate(-1deg) scale(1)}to{transform:rotate(1deg) scale(1.02)}}.sacred-flower-frame-img{width:100%;height:100%;object-fit:cover;display:block}.ux-tech-overlay-container{position:absolute;bottom:22px;left:50%;transform:translate(-50%);z-index:10}.ux-tech-glass-btn{display:inline-flex;align-items:center;gap:10px;background:#ffffffe0;border:1px solid var(--color-border-gold-strong);border-radius:999px;padding:8px 20px;text-decoration:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 6px 20px #00000026;transition:all .25s ease}.ux-tech-glass-btn:hover{background:#fff;transform:translateY(-2px);box-shadow:0 8px 26px var(--color-shadow-gold-hover)}.ux-tech-dot{color:var(--color-gold-rich);font-size:1rem}.ux-tech-content{display:flex;flex-direction:column;text-align:left}.ux-tech-tagline{font-size:.65rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:1px}.ux-tech-title{font-family:Montserrat,sans-serif;font-size:.82rem;font-weight:800;color:var(--color-text-main);letter-spacing:.5px}.ux-tech-author{font-size:.68rem;color:var(--color-gold-dark)}.ux-tech-arrow{color:var(--color-gold-rich);font-weight:700;font-size:1.1rem}.floating-flowers-container,.curtain-shower-container,.petal-throw-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:999;overflow:hidden}.floating-flower-track{position:absolute;top:-60px;animation-name:fallDown;animation-timing-function:linear;animation-iteration-count:infinite}@keyframes fallDown{0%{top:-60px;opacity:0}10%{opacity:.85}90%{opacity:.85}to{top:105vh;opacity:0}}.floating-flower-img.sway-1{animation:sway1 3.5s ease-in-out infinite alternate}.floating-flower-img.sway-2{animation:sway2 4.2s ease-in-out infinite alternate}.floating-flower-img.sway-3{animation:sway3 3.8s ease-in-out infinite alternate}@keyframes sway1{0%{transform:rotate(-15deg) translate(-12px)}to{transform:rotate(18deg) translate(12px)}}@keyframes sway2{0%{transform:rotate(12deg) translate(14px)}to{transform:rotate(-16deg) translate(-14px)}}@keyframes sway3{0%{transform:rotate(-20deg) translate(-8px)}to{transform:rotate(15deg) translate(10px)}}.curtain-shower-item{position:absolute;top:-80px;animation:showerDrop 4.8s cubic-bezier(.25,.46,.45,.94) forwards}@keyframes showerDrop{0%{top:-80px;opacity:0;transform:rotate(0) scale(.7)}15%{opacity:1;transform:rotate(45deg) scale(1.05)}85%{opacity:.9}to{top:110vh;opacity:0;transform:rotate(240deg) scale(.9)}}.petal-throw-item{position:absolute;animation:petalWind 4.8s cubic-bezier(.3,.7,.4,1) forwards}@keyframes petalWind{0%{opacity:0;transform:translate(0) rotate(var(--rot-start, 0deg))}15%{opacity:.9}80%{opacity:.8}to{opacity:0;transform:translate(var(--dx, -80vw),var(--dy, 40vh)) rotate(var(--rot-end, -180deg))}}.scroll-animate,.stagger-anim{opacity:0;transform:translateY(35px);transition:opacity .85s cubic-bezier(.16,1,.3,1),transform .85s cubic-bezier(.16,1,.3,1)}.scroll-animate.visible,.stagger-anim.visible,.scroll-animate.show{opacity:1;transform:translateY(0)}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.24s}.delay-3{transition-delay:.36s}.delay-4{transition-delay:.48s}@media(max-width:480px){.details-section,.venue-section,.scratch-section{padding-left:14px;padding-right:14px}.card-couple-name{font-size:2.7rem}.big-heart-card{width:290px;height:280px}.time-block{min-width:60px;padding:8px 10px}.number{font-size:32px}}
