:root{--bg-primary: #fffafb;--text-dark: #382427;--text-brown: #5c3a41;--accent-gold: #d4af37;--accent-dark-gold: #b5952f;--btn-main: #e8a8b6;--btn-hover: #d18e9d;--border-light: #f0d8de}*{margin:0;padding:0;box-sizing:border-box}body.inv-wrap{font-family:Cormorant Garamond,serif;background:var(--bg-primary);color:var(--text-dark);min-height:100vh;overflow-x:hidden}#music-toggle{position:fixed;bottom:30px;right:30px;width:55px;height:55px;border-radius:50%;background:#fdf9f4b3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--accent-gold);box-shadow:0 8px 32px #7a4f2826;display:flex;align-items:center;justify-content:center;font-size:24px;z-index:1000;cursor:pointer;transition:transform .3s ease}#music-toggle:hover{transform:scale(1.1)}.lotus-divider{display:flex;align-items:center;justify-content:center;gap:10px;margin:1.5rem 0 1rem;color:var(--accent-gold);font-size:18px;letter-spacing:6px}.lotus-divider:before,.lotus-divider:after{content:"";flex:1;height:.5px;background:linear-gradient(to right,transparent,var(--accent-gold))}.lotus-divider:after{background:linear-gradient(to left,transparent,var(--accent-gold))}.hero{text-align:center;padding:2.5rem 1.5rem 1.5rem;position:relative;overflow:hidden;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.hero-top-text{font-size:10px;letter-spacing:4px;text-transform:uppercase;color:var(--accent-gold);margin-bottom:1.2rem}.couple-names{font-family:"Noto Serif Sinhala",serif;font-size:38px;font-weight:300;color:var(--text-brown);line-height:1.15}.amp{font-family:Great Vibes,cursive;font-size:40px;color:var(--accent-gold);display:block;margin:.2rem 0}.wedding-label{font-size:11px;letter-spacing:5px;text-transform:uppercase;color:var(--accent-dark-gold);margin:1rem 0 .3rem}.wedding-date{font-style:italic;font-size:22px;color:var(--text-brown)}.countdown-section{text-align:center;padding:2rem 1.5rem}.section-title{font-style:italic;font-size:26px;color:var(--text-brown);margin-bottom:.2rem}.section-sub{font-family:Poppins,sans-serif;font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--accent-gold);margin-bottom:1.5rem}.countdown-grid{display:flex;justify-content:center;gap:10px}.cd-box{background:#fff;border-radius:12px;width:70px;padding:12px 5px 8px;text-align:center;box-shadow:0 8px 25px #e8a8b640}.cd-num{font-size:28px;font-weight:600;line-height:1;display:block;color:var(--accent-dark-gold)}.cd-label{font-family:Poppins,sans-serif;font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--text-brown);display:block;margin-top:6px}.details-section{padding:1.5rem 1.2rem 2rem;text-align:center}.detail-cards{display:flex;flex-direction:column;gap:10px;margin:1rem 0 1.2rem;max-width:400px;margin-left:auto;margin-right:auto}.detail-card{background:#fff;border:.5px solid var(--border-light);border-radius:10px;padding:12px 16px;text-align:left;display:flex;gap:12px;align-items:flex-start;box-shadow:0 4px 10px #00000005}.detail-icon{color:var(--accent-gold);font-size:24px;margin-top:2px;flex-shrink:0}.detail-label{font-family:Poppins,sans-serif;font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--accent-gold);margin-bottom:3px}.detail-value{font-family:"Noto Serif Sinhala",serif;font-size:15px;color:var(--text-brown);font-weight:600}.detail-sub{font-size:12px;color:var(--accent-dark-gold);font-style:italic}.rsvp-btn,.map-btn{background-color:var(--text-brown);color:#fff;border:none;border-radius:8px;padding:12px 35px;font-family:Poppins,sans-serif;font-size:16px;cursor:pointer;box-shadow:0 4px 15px #5c3a4133;transition:all .3s ease;display:inline-block;text-decoration:none}.rsvp-btn:hover,.map-btn:hover{background-color:var(--text-dark);transform:translateY(-2px);box-shadow:0 6px 20px #3824274d}.rsvp-section{padding:1.5rem 1.2rem 2rem;text-align:center}.rsvp-form{background:#fff;border:.5px solid var(--border-light);border-radius:14px;padding:1.4rem 1.2rem;margin-top:1rem;text-align:left;max-width:400px;margin-left:auto;margin-right:auto;box-shadow:0 10px 30px #00000008}.field-label{font-family:Poppins,sans-serif;font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--accent-dark-gold);margin-bottom:5px;display:block}.field-label span{color:var(--accent-gold)}.rsvp-input,.rsvp-select,.rsvp-textarea{width:100%;border:none;border-bottom:.5px solid var(--border-light);background:transparent;padding:6px 0 8px;font-family:Cormorant Garamond,serif;font-size:15px;color:var(--text-dark);margin-bottom:1rem;outline:none}.rsvp-input::placeholder,.rsvp-textarea::placeholder{color:#cbbfa8;font-style:italic}.field-row{display:flex;gap:12px;margin-bottom:0}.field-row>div{flex:1}.rsvp-textarea{resize:none;min-height:50px}.success-msg{display:none;text-align:center;padding:1.5rem;color:var(--text-brown);font-style:italic;font-size:16px}.rsvp-deadline{font-size:12px;color:var(--accent-dark-gold);font-style:italic;margin-top:.5rem;text-align:center}.contact-section{padding:1rem 1.2rem 1.5rem;text-align:center}.contact-cards{display:flex;gap:10px;margin-top:1rem;max-width:400px;margin-left:auto;margin-right:auto}.contact-card{flex:1;background:#fff;border:.5px solid var(--border-light);border-radius:10px;padding:12px;text-align:center}.contact-name{font-family:"Noto Serif Sinhala",serif;font-size:13px;color:var(--text-brown);font-weight:600;margin-bottom:4px}.contact-num{font-size:13px;color:var(--accent-dark-gold);letter-spacing:1px}.footer{background:#3a1a0e;padding:2.5rem 1.5rem;text-align:center;position:relative;overflow:hidden}.footer-top{font-family:Poppins,sans-serif;font-size:9px;letter-spacing:4px;text-transform:uppercase;color:var(--accent-gold);margin-bottom:.5rem}.footer-title{font-style:italic;font-size:32px;color:var(--bg-primary);margin-bottom:.5rem}.footer-sub{font-style:italic;font-size:13px;color:var(--accent-gold);margin-bottom:1.2rem}.footer-names{font-family:"Noto Serif Sinhala",serif;font-size:18px;color:var(--border-light);font-weight:300;letter-spacing:1px}.couple-art{margin:1.2rem auto .5rem;width:180px;height:200px;position:relative}.bg-lotus{position:absolute;opacity:.07;pointer-events:none}.custom-couple-img{width:280px;max-width:100%;height:auto;position:relative;z-index:5;filter:drop-shadow(0 15px 25px rgba(64,3,12,.4));animation:floatCouple 4s ease-in-out infinite}@keyframes floatCouple{0%{transform:translateY(0)}50%{transform:translateY(-12px)}to{transform:translateY(0)}}@media (max-width: 768px){.couple-names{font-size:30px}.amp,.section-title{font-size:22px}.wedding-date{font-size:18px}.hero{padding:1.5rem 1rem;min-height:100svh}.countdown-section,.details-section,.rsvp-section,.contact-section{padding:1.5rem 1rem}.countdown-grid{flex-wrap:wrap;gap:8px}.cd-box{width:55px;padding:8px 4px 6px}.cd-num{font-size:20px}.cd-label{font-size:7px}.detail-card{flex-direction:column;align-items:center;text-align:center;gap:8px;padding:15px 10px}.detail-icon{margin-top:0;margin-bottom:5px}.field-row{flex-direction:column;gap:0}.rsvp-form{padding:1.2rem 1rem}.couple-art{transform:scale(.85);margin:0 auto}.custom-couple-img{width:240px}}#loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at center,#fffefc,#fffaf7 45%,#f8f4ef);display:flex;justify-content:center;align-items:center;z-index:9999;overflow:hidden;transition:opacity 1.6s ease,visibility 1.6s}.camera-zoom{display:flex;flex-direction:column;align-items:center;animation:slowCameraZoom 12s ease-in-out infinite alternate}@keyframes slowCameraZoom{0%{transform:scale(.94) translateY(15px)}to{transform:scale(1.04) translateY(-5px)}}.ripple{position:absolute;top:55%;left:50%;transform:translate(-50%,-50%);width:100px;height:30px;border:1.5px solid rgba(212,175,55,.4);border-radius:50%;animation:rippleEffect 5s linear infinite}.r1{animation-delay:0s}.r2{animation-delay:1.6s}.r3{animation-delay:3.2s}@keyframes rippleEffect{0%{transform:translate(-50%,-50%) scale(.8);opacity:.6}to{transform:translate(-50%,-50%) scale(3.5);opacity:0}}.mist-container{position:absolute;top:40%;left:50%;transform:translate(-50%,-50%);width:300px;height:150px;background:radial-gradient(ellipse,rgba(255,255,255,.9) 0%,transparent 70%);filter:blur(25px);opacity:.3;animation:mistMove 8s ease-in-out infinite alternate;z-index:1}@keyframes mistMove{0%{transform:translate(-55%,-45%) scale(1);opacity:.2}to{transform:translate(-45%,-50%) scale(1.2);opacity:.4}}.particles{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none}.particle{position:absolute;width:3px;height:3px;background:#d4af37;border-radius:50%;box-shadow:0 0 6px #d4af37;animation:floatParticle 6s linear infinite;opacity:0}.p1{left:45%;top:60%;animation-delay:0s;animation-duration:5s}.p2{left:55%;top:55%;animation-delay:1s;animation-duration:6s}.p3{left:40%;top:50%;animation-delay:2s;animation-duration:4.5s}.p4{left:60%;top:65%;animation-delay:3s;animation-duration:5.5s}.p5{left:48%;top:70%;animation-delay:4s;animation-duration:6s}.p6{left:52%;top:45%;animation-delay:1.5s;animation-duration:5s}@keyframes floatParticle{0%{transform:translateY(0) scale(.5);opacity:0}20%{opacity:1}80%{opacity:1}to{transform:translateY(-80px) translate(20px) scale(1.2);opacity:0}}.lotus-wrapper{position:relative;width:160px;height:160px;z-index:5;animation:lotusFloat 5s ease-in-out infinite alternate}@keyframes lotusFloat{0%{transform:translateY(5px)}to{transform:translateY(-5px)}}.lotus-center-light{position:absolute;top:65%;left:50%;transform:translate(-50%,-50%);width:25px;height:25px;background:#d4af37;border-radius:50%;filter:blur(8px);z-index:6;animation:centerBloomLight 4s ease-in-out infinite alternate}@keyframes centerBloomLight{0%{transform:translate(-50%,-50%) scale(.5);opacity:.3}60%{transform:translate(-50%,-50%) scale(2.5);opacity:1;filter:blur(15px)}to{transform:translate(-50%,-50%) scale(1.8);opacity:.8;filter:blur(10px)}}.ultra-lotus{width:100%;height:100%;overflow:visible;z-index:10;position:relative}.ultra-lotus .petal{transform-origin:50% 90%;transform-box:view-box;fill:url(#petalGradient);stroke:#d4af3799;stroke-width:.5px;animation:organicBloom 4s cubic-bezier(.25,.8,.25,1) infinite alternate}.b-l2{--rot: -65deg;--scl: 1.1;animation-delay:0s}.b-r2{--rot: 65deg;--scl: 1.1;animation-delay:0s}.b-l1{--rot: -45deg;--scl: 1.1;animation-delay:.2s}.b-r1{--rot: 45deg;--scl: 1.1;animation-delay:.2s}.m-l2{--rot: -50deg;--scl: .95;animation-delay:.4s}.m-r2{--rot: 50deg;--scl: .95;animation-delay:.4s}.m-l1{--rot: -30deg;--scl: .95;animation-delay:.6s}.m-r1{--rot: 30deg;--scl: .95;animation-delay:.6s}.f-l2{--rot: -35deg;--scl: .8;animation-delay:.8s}.f-r2{--rot: 35deg;--scl: .8;animation-delay:.8s}.f-l1{--rot: -18deg;--scl: .8;animation-delay:1s}.f-r1{--rot: 18deg;--scl: .8;animation-delay:1s}.c-l2{--rot: -12deg;--scl: .65;animation-delay:1.2s}.c-r2{--rot: 12deg;--scl: .65;animation-delay:1.2s}.c-l1{--rot: -5deg;--scl: .65;animation-delay:1.4s}.c-r1{--rot: 5deg;--scl: .65;animation-delay:1.4s}@keyframes organicBloom{0%{transform:rotate(0) scale(.15);opacity:0}15%{opacity:1}to{transform:rotate(var(--rot)) scale(var(--scl));opacity:1}}.names{font-family:Great Vibes,cursive;font-size:3.5rem;letter-spacing:2px}.heart{font-family:Poppins,sans-serif;font-size:2.5rem;display:inline-block;animation:heartbeat 1.5s infinite}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.progress-container{width:250px;height:4px;background:#c4a46b33;border-radius:10px;overflow:hidden}.progress-bar{height:100%;width:0%;background:linear-gradient(90deg,#c4a46b,#7a4f28);transition:width .1s linear}.progress-text{font-family:Poppins,sans-serif;font-size:.85rem;color:#9a7a55;letter-spacing:1px;text-transform:uppercase}.water-ripple{position:fixed;border-radius:50%;border:2px solid rgba(196,164,107,.6);box-shadow:0 0 20px #c4a46b4d,inset 0 0 15px #ffffff80;transform:translate(-50%,-50%);pointer-events:none;animation:ripple-expand 1.5s cubic-bezier(.1,.8,.3,1) forwards;z-index:9998}@keyframes ripple-expand{0%{width:0px;height:0px;opacity:1}to{width:250px;height:250px;opacity:0}}.scroll-explore{margin-top:2rem;display:flex;flex-direction:column;align-items:center;gap:6px;font-family:Cormorant Garamond,serif;font-size:10px;letter-spacing:4px;text-transform:uppercase;color:#9a7a55;animation:gentle-bounce 2.5s infinite ease-in-out}.scroll-explore-icons{display:flex;align-items:center;gap:6px;font-size:14px;color:#7a4f28}@keyframes gentle-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes slightBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px);color:#c4a46b}}.bounce-active{animation:slightBounce .3s ease}.petals-container{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:1;overflow:hidden}.petals-container .petal{position:absolute;background:linear-gradient(135deg,#f9c5d1,#e8a8b6);border-radius:0 50%;opacity:.6;box-shadow:0 0 10px #e8a8b666;animation:fallAndSway linear infinite}.petals-container .petal:nth-child(1){left:10%;animation-duration:14s;animation-delay:0s;width:12px;height:12px}.petals-container .petal:nth-child(2){left:30%;animation-duration:18s;animation-delay:4s;width:18px;height:18px}.petals-container .petal:nth-child(3){left:50%;animation-duration:12s;animation-delay:2s;width:15px;height:15px}.petals-container .petal:nth-child(4){left:70%;animation-duration:16s;animation-delay:7s;width:14px;height:14px}.petals-container .petal:nth-child(5){left:85%;animation-duration:15s;animation-delay:1s;width:16px;height:16px}.petals-container .petal:nth-child(6){left:20%;animation-duration:13s;animation-delay:5s;width:20px;height:20px}@keyframes fallAndSway{0%{transform:translateY(-50px) rotate(0) translate(0);opacity:0}10%{opacity:.7}50%{transform:translateY(50vh) rotate(180deg) translate(30px)}90%{opacity:.7}to{transform:translateY(100vh) rotate(360deg) translate(-20px);opacity:0}}@media (max-width: 768px){.names{font-size:2.2rem}.heart{font-size:1.8rem}.loading-text{width:100%;padding:0 20px;box-sizing:border-box}.progress-container{width:200px}}
