@import"https://fonts.googleapis.com/css2?family=Dancing+Script:wght@700&display=swap";@keyframes float1{0%,to{transform:translateY(0) rotate(0);opacity:.6}33%{transform:translateY(-20px) rotate(120deg);opacity:.8}66%{transform:translateY(10px) rotate(240deg);opacity:.4}}@keyframes float2{0%,to{transform:translate(0) rotate(0);opacity:.5}50%{transform:translate(20px) rotate(180deg);opacity:.9}}@keyframes float3{0%,to{transform:translateY(0) translate(0) rotate(0);opacity:.7}25%{transform:translateY(-15px) translate(15px) rotate(90deg);opacity:.9}50%{transform:translateY(0) translate(20px) rotate(180deg);opacity:.5}75%{transform:translateY(15px) translate(15px) rotate(270deg);opacity:.8}}@keyframes heartFloat{0%{transform:translateY(100vh) rotate(0);opacity:0}10%{opacity:.3}90%{opacity:.3}to{transform:translateY(-100px) rotate(360deg);opacity:0}}@keyframes shimmer{0%{background-position:0% 0%}50%{background-position:100% 100%}to{background-position:0% 0%}}@keyframes heartbeat{0%{transform:scale(1)}14%{transform:scale(1.1)}28%{transform:scale(1)}42%{transform:scale(1.1)}70%{transform:scale(1)}}@keyframes glow{0%,to{transform:scale(1) rotate(0);opacity:.1}25%{transform:scale(1.1) rotate(90deg);opacity:.15}50%{transform:scale(.9) rotate(180deg);opacity:.08}75%{transform:scale(1.05) rotate(270deg);opacity:.12}}@keyframes sparkle{0%,to{opacity:0;transform:scale(0) rotate(0)}50%{opacity:.8;transform:scale(1) rotate(180deg)}}.opening-hidden{opacity:0;transform:translateY(-100vh);pointer-events:none}.main-content.show{opacity:1;transform:translateY(0)}@media (max-width: 600px){.pasangan-row{flex-direction:column!important;gap:.5rem!important}.pasangan-row>div{width:100%;max-width:100%}}@media (min-width: 768px){.card{max-width:600px!important;padding:2rem!important}.main-invitation,.time-place-section,.gift-section,.love-journey-section{max-width:600px!important;padding:2.5rem 2rem!important}.line-separator{max-width:600px!important}.wedding-title{font-size:1.5rem}.name{font-size:2.5rem}.and{font-size:4rem}.name-bottom{font-size:2.5rem}.greeting-text{font-size:2.5rem!important}.invitation-text{font-size:1.3rem!important}.bride-name p:first-child,.groom-name p:first-child{font-size:2.3rem!important}.bride-name p:last-child,.groom-name p:last-child{font-size:1.4rem!important}.and-symbol span,.section-title h2,.gift-title h2,.love-title h2{font-size:3.5rem!important}.event-details h2{font-size:3rem!important}.bank-account h3,.ewallet-account h3{font-size:2.3rem!important}.love-quote,.footer-message{font-size:1.3rem!important}.footer-names{font-size:1.5rem!important}.footer-section>div{max-width:600px!important}}section,.main-invitation,.time-place-section,.gift-section,.love-journey-section{overflow:hidden}#horizontal-gallery-section{overflow:hidden!important}.pin-wrap-gallery{will-change:transform}.gallery-card{flex-shrink:0}.gallery-card img{transition:transform .3s ease}.gallery-card:hover img{transform:scale(1.1)}html{scroll-behavior:smooth}body{overflow-x:hidden}.love-journey-section{width:100%;height:100vh;display:flex;align-items:center;background:transparent;position:relative;overflow:hidden}.journey-container{width:100%;max-width:1200px;margin:0 auto;padding:0 1rem;height:100vh;display:flex;align-items:center;overflow:hidden}.pin-wrap-journey{width:100%;display:flex;align-items:center;padding:0;gap:2rem;will-change:transform;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.journey-title{min-width:300px;width:300px;text-align:center;color:#a57cc5}.journey-title h2{font-family:Dancing Script,cursive;font-size:clamp(2.5rem,5vw,4rem);font-weight:800;margin-bottom:1rem;text-shadow:0 2px 10px rgba(165,124,197,.3)}.journey-title-text{font-family:Dancing Script,cursive;font-size:2.2rem;font-weight:700;color:#a57cc5;margin-bottom:1rem;margin-top:.3rem;text-shadow:0 2px 8px rgba(165,124,197,.3)}.journey-desc{font-size:1.1rem;color:#7c5e99;line-height:1.6;margin:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical}.journey-card{background:#a57cc51a;min-width:420px;width:420px;height:580px;border-radius:1.5rem;position:relative;cursor:pointer;backdrop-filter:blur(10px);border:1px solid rgba(165,124,197,.2);flex-shrink:0;display:flex;flex-direction:column;scroll-snap-align:start}.journey-img-container{flex:1 1 55%;padding:2rem 1.5rem 1rem;display:flex;align-items:center}.journey-img{width:100%;height:100%;object-fit:cover;border-radius:1rem;box-shadow:0 4px 16px #a57cc533;max-height:300px}.journey-text-container{flex:1 1 45%;padding:1rem 1.5rem 2rem;display:flex;flex-direction:column;justify-content:center;text-align:center;min-height:0}.journey-quote{min-width:5px;width:5px;height:100vh;display:flex;align-items:center;justify-content:center;color:#a57cc5;flex-shrink:0;text-align:center}.journey-motor{position:absolute;bottom:20px;left:20px;z-index:10;display:flex;align-items:center;justify-content:center}.journey-motor-img{width:120px;height:auto;border-radius:.8rem;filter:drop-shadow(0 2px 8px rgba(165,124,197,.2));opacity:.7;transition:all .3s ease;cursor:pointer}.journey-motor-img:hover{opacity:1;transform:scale(1.1)}@media (max-width: 767px){.journey-container{max-width:100%;padding:0 .5rem}.pin-wrap-journey{gap:1rem}.journey-title{min-width:250px;width:250px;padding:0 2rem}.journey-card{min-width:350px;width:350px;height:520px}.journey-img-container{padding:1.8rem 1.2rem .8rem}.journey-img{max-height:260px}.journey-text-container{padding:.8rem 1.2rem 1.5rem}.journey-title-text{font-size:1.8rem}.journey-desc{font-size:1rem}.journey-motor-img{width:80px}}html{overflow-x:hidden}body{background:#fdf6ec;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;margin:0;overflow-x:hidden;position:relative}
