:root{--primary-color:#a162c8;--secondary-color:#b19cd9;--background-color:#f9eefd;--background-color-secondary:#fbf4fd}.brush-mask{width:200px;height:200px;-webkit-mask-image:url('img/brush-mask-2-726f17d4d78a9e6c7793c168cb0f9811.png');mask-image:url('img/brush-mask-2-726f17d4d78a9e6c7793c168cb0f9811.png');-webkit-mask-size:cover;mask-size:cover;object-position:cover}.custom-footer-bg{opacity:.7;background-image:url('img/footer-flowers-1-b460eedcbbd4215f335359d0379c9abc.png');background-repeat:no-repeat;background-position:bottom center;background-size:contain;position:relative}.container{background-color:var(--background-color)}.section-front{position:relative;overflow:hidden;color:#fff}.section-front .bubble{position:absolute;border-radius:50%;background:rgba(255,255,255,.2);backdrop-filter:blur(5px);animation:floatUp 10s infinite ease-in-out,blink 2s infinite ease-in-out;z-index:1}.section-front .content{position:relative;z-index:2}@keyframes floatUp{0%{transform:translateY(0) scale(1);opacity:0}50%{opacity:1}100%{transform:translateY(-120vh) scale(1.2);opacity:0}}@keyframes blink{0%,100%{opacity:.5}50%{opacity:.8}}.my-border-out{border:10px solid var(--secondary-color)}.my-border-in{border:2px solid var(--secondary-color)}.my-primary{color:var(--primary-color)}.my-secondary{color:var(--secondary-color)}.arizonia-bold{font-family:Arizonia,cursive;font-weight:500;font-style:normal;font-size:2.5rem}.charm-regular{font-family:Charm,cursive;font-weight:500;font-style:normal;font-size:2.5rem}.section-front{font-weight:500}.name{font-family:Charm,cursive;font-weight:700;font-size:3rem}p{font-size:.7rem}.wedding-names{font-size:3rem}.countdown-label,.countdown-time,.wedding-date{font-family:Poppins,sans-serif}.wedding-date{font-size:1.25rem;margin-top:.5rem}.countdown-time{font-size:2rem;font-weight:700}.countdown-label{font-size:1rem;letter-spacing:1px;margin-top:.25rem}.hiasan-kanan-atas{position:absolute;top:0;right:0;width:150px;z-index:1;opacity:.6;pointer-events:none}.section-6 .card{background-color:var(--background-color-secondary)}.section-6 button{background-color:var(--primary-color);color:#fff;border:none;padding:.5rem 1rem;font-size:.8rem;cursor:pointer;transition:background-color .3s ease}.image-gradient-wrapper{position:relative;display:inline-block;width:100%}.image-gradient-wrapper::after{content:"";position:absolute;bottom:0;left:0;width:100%;height:50%;background:linear-gradient(to top,#f9eefd,transparent);pointer-events:none;z-index:1}.image-gradient-wrapper img{display:block;width:50%;height:auto;position:relative;z-index:0}.wave-top{position:absolute;top:-1px;left:0;width:100%;height:100px;overflow:hidden;line-height:0;z-index:1}.wave-top svg{position:relative;display:block;width:100%;height:100px}.btn-primary{background-color:var(--primary-color)!important;color:#fff}.scroll-button{animation:bounce 2s infinite}@keyframes bounce{0%,100%,20%,50%,80%{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.playfair-display-400{font-family:"Playfair Display",serif;font-optical-sizing:auto;font-weight:400;font-style:normal}.hubot-sans-400{font-family:"Hubot Sans",sans-serif;font-optical-sizing:auto;font-weight:400;font-style:normal;font-variation-settings:"wdth" 100}.hiasan-section2-kiri-bawah{opacity:.8;position:absolute;bottom:0;left:-75px;width:auto;height:60vh;z-index:2}.hiasan-section2-bawah{opacity:.7;padding:0;margin:0;width:100%;height:auto;z-index:1;display:block}.oswald-400{font-family:Oswald,sans-serif;font-optical-sizing:auto;font-weight:400;font-style:normal}.sansita-swashed-400{font-family:"Sansita Swashed",system-ui;font-optical-sizing:auto;font-weight:400;font-style:normal}.form-control::placeholder{color:var(--secondary-color);opacity:1}.form-control::-ms-input-placeholder{color:var(--secondary-color)}select.form-select{color:var(--primary-color)}select.form-select option{color:var(--primary-color)}.spinner-border{--bs-spinner-border-width:0.25rem;border-color:var(--primary-color) transparent transparent transparent}.scroll-animate{opacity:0;transform:translateY(50px);transition:opacity .8s ease-out,transform .8s ease-out}.scroll-animate.is-visible{opacity:1;transform:translateY(0)}.scroll-animate.fade-up{opacity:0;transform:translateY(50px)}.scroll-animate.fade-up.is-visible{opacity:1;transform:translateY(0)}.scroll-animate.fade-down{opacity:0;transform:translateY(-50px)}.scroll-animate.fade-down.is-visible{opacity:1;transform:translateY(0)}.scroll-animate.fade-left{opacity:0;transform:translateX(-50px)}.scroll-animate.fade-left.is-visible{opacity:1;transform:translateX(0)}.scroll-animate.fade-right{opacity:0;transform:translateX(50px)}.scroll-animate.fade-right.is-visible{opacity:1;transform:translateX(0)}.scroll-animate.scale-up{opacity:0;transform:scale(.8)}.scroll-animate.scale-up.is-visible{opacity:1;transform:scale(1)}.scroll-animate.scale-down{opacity:0;transform:scale(1.2)}.scroll-animate.scale-down.is-visible{opacity:1;transform:scale(1)}.scroll-animate.rotate-in{opacity:0;transform:rotate(-10deg) scale(.9)}.scroll-animate.rotate-in.is-visible{opacity:1;transform:rotate(0) scale(1)}.scroll-animate.flip-in{opacity:0;transform:perspective(500px) rotateX(-45deg)}.scroll-animate.flip-in.is-visible{opacity:1;transform:perspective(500px) rotateX(0)}.scroll-animate.zoom-in{opacity:0;transform:scale(.5)}.scroll-animate.zoom-in.is-visible{opacity:1;transform:scale(1)}.scroll-animate.bounce-in{opacity:0;transform:translateY(80px);transition:opacity .6s ease-out,transform .8s cubic-bezier(.34, 1.56, .64, 1)}.scroll-animate.bounce-in.is-visible{opacity:1;transform:translateY(0)}.scroll-animate.delay-100{transition-delay:0.1s}.scroll-animate.delay-200{transition-delay:0.2s}.scroll-animate.delay-300{transition-delay:0.3s}.scroll-animate.delay-400{transition-delay:0.4s}.scroll-animate.delay-500{transition-delay:0.5s}.scroll-animate.delay-600{transition-delay:0.6s}.scroll-animate.delay-700{transition-delay:0.7s}.scroll-animate.delay-800{transition-delay:0.8s}.scroll-animate.duration-fast{transition-duration:.4s}.scroll-animate.duration-normal{transition-duration:.8s}.scroll-animate.duration-slow{transition-duration:1.2s}.scroll-animate.duration-slower{transition-duration:1.6s}.scroll-animate.card-reveal{opacity:0;transform:translateY(30px) scale(.95);transition:opacity .6s ease-out,transform .6s ease-out}.scroll-animate.card-reveal.is-visible{opacity:1;transform:translateY(0) scale(1)}.scroll-animate.image-reveal{opacity:0;transform:scale(.9);filter:blur(5px);transition:opacity .8s ease-out,transform .8s ease-out,filter .8s ease-out}.scroll-animate.image-reveal.is-visible{opacity:1;transform:scale(1);filter:blur(0)}.scroll-animate.text-reveal{opacity:0;transform:translateY(20px);transition:opacity .5s ease-out,transform .5s ease-out}.scroll-animate.text-reveal.is-visible{opacity:1;transform:translateY(0)}.scroll-animate.stagger-children.is-visible>*{animation:staggerFadeIn .5s ease-out forwards}.scroll-animate.stagger-children>:first-child{animation-delay:.1s}.scroll-animate.stagger-children>:nth-child(2){animation-delay:.2s}.scroll-animate.stagger-children>:nth-child(3){animation-delay:.3s}.scroll-animate.stagger-children>:nth-child(4){animation-delay:.4s}.scroll-animate.stagger-children>:nth-child(5){animation-delay:.5s}.scroll-animate.stagger-children>:nth-child(6){animation-delay:.6s}@keyframes staggerFadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.scroll-animate.name-reveal{opacity:0;transform:translateY(30px) scale(.95);transition:opacity 1s ease-out,transform 1s ease-out}.scroll-animate.name-reveal.is-visible{opacity:1;transform:translateY(0) scale(1)}.scroll-animate.quote-reveal{opacity:0;transform:translateY(40px);transition:opacity 1.2s ease-out,transform 1.2s ease-out}.scroll-animate.quote-reveal.is-visible{opacity:1;transform:translateY(0)}