@import "https://fonts.googleapis.com/css2?family=Abhaya+Libre:wght@400;500;600;700;800&display=swap";
:root{--cream-0:#fff;--cream-1:#fff;--cream-2:#f9f9f9;--cream-3:#f0f0f0;--cream-4:#e8e8e8;--maroon-1:#8b3042;--maroon-2:#6b2737;--maroon-3:#4e1c28;--maroon-4:#3a1219;--gold-1:#d4a95a;--gold-2:#c4903a;--gold-3:#a87428;--gold-4:#8b5e1a;--gold-pale:#e8d5a8;--gold-light:#f2e4c0;--text-primary:#000;--text-secondary:#333;--text-muted:#555;--text-gold:#8b5e1a;--border-gold:#c4903a4d;--border-maroon:#6b273726;--font-display:"Great Vibes", cursive;--font-serif:"Cormorant Garamond", "Playfair Display", Georgia, serif;--font-heading:"Playfair Display", "Cormorant Garamond", Georgia, serif;--font-sinhala:"Abhaya Libre", serif;--section-pad-v:100px;--section-pad-h:clamp(20px, 6vw, 80px);--transition:.4s cubic-bezier(.4, 0, .2, 1);--transition-fast:.2s ease;--shadow-soft:0 8px 40px #4e1c2814;--shadow-card:0 2px 24px #4e1c2812;--shadow-gold:0 4px 30px #c4903a33}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:auto;font-size:16px}body{font-family:var(--font-serif);background:var(--cream-1);color:var(--text-primary);line-height:1.7;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.lang-si,.lang-si h1,.lang-si h2,.lang-si h3,.lang-si h4,.lang-si h5,.lang-si h6,.lang-si .section-title,.lang-si .display-title,.lang-si .section-subtitle,.lang-si .ornament,.lang-si .btn-invitation,.lang-si .btn-gold,.lang-si .btn-outline{font-family:var(--font-sinhala)!important}.display-title{font-family:var(--font-display);color:var(--maroon-2);font-size:clamp(3rem,8vw,6rem);line-height:1.1}.section-title{font-family:var(--font-heading);color:var(--maroon-2);letter-spacing:.02em;font-size:clamp(1.5rem,3.5vw,2.6rem);font-weight:500}.section-subtitle{font-family:var(--font-serif);color:var(--text-muted);letter-spacing:.05em;font-size:clamp(.9rem,2vw,1.1rem);font-style:italic}.ornament{color:var(--text-gold);font-family:var(--font-serif);letter-spacing:.3em;text-transform:uppercase;justify-content:center;align-items:center;gap:14px;font-size:.75rem;display:flex}.ornament:before,.ornament:after{content:"";background:linear-gradient(to right, transparent, var(--gold-2));flex:1;max-width:70px;height:1px}.ornament:after{background:linear-gradient(to left, transparent, var(--gold-2))}.diamond-ornament{background:var(--gold-2);width:8px;height:8px;margin:0 auto;display:block;transform:rotate(45deg)}.btn-invitation{color:var(--maroon-2);font-family:var(--font-serif);letter-spacing:.25em;text-transform:uppercase;border:1.5px solid var(--maroon-2);cursor:pointer;transition:var(--transition);background:0 0;border-radius:60px;align-items:center;gap:10px;padding:16px 40px;font-size:.8rem;font-weight:600;display:inline-flex}.btn-invitation:hover{background:var(--maroon-2);color:var(--cream-1);transform:translateY(-2px);box-shadow:0 6px 24px #6b273733}.btn-gold{background:var(--maroon-2);color:var(--cream-1);font-family:var(--font-serif);letter-spacing:.15em;text-transform:uppercase;cursor:pointer;transition:var(--transition);border:none;align-items:center;gap:8px;padding:14px 36px;font-size:.85rem;font-weight:500;display:inline-flex}.btn-gold:hover{background:var(--maroon-3);box-shadow:var(--shadow-gold);transform:translateY(-2px)}.btn-outline{color:var(--maroon-2);font-family:var(--font-serif);letter-spacing:.12em;text-transform:uppercase;border:1.5px solid var(--border-gold);cursor:pointer;transition:var(--transition);background:0 0;align-items:center;gap:8px;padding:12px 32px;font-size:.85rem;font-weight:500;display:inline-flex}.btn-outline:hover{border-color:var(--maroon-2);background:var(--maroon-2);color:var(--cream-1)}.section{padding:var(--section-pad-v) var(--section-pad-h);position:relative}.section-inner{max-width:1100px;margin:0 auto}.text-center{text-align:center}.divider-lotus{color:var(--gold-2);justify-content:center;align-items:center;gap:18px;margin:36px auto;display:flex}.divider-lotus .line{background:linear-gradient(to right, transparent, var(--gold-2));flex:1;max-width:160px;height:1px}.divider-lotus .line.right{background:linear-gradient(to left, transparent, var(--gold-2))}.glass-card{border:1px solid var(--border-gold);box-shadow:var(--shadow-card);background:#ffffffe6}.reveal{opacity:0;transition:all .8s cubic-bezier(.16,1,.3,1);transform:translateY(30px)}.reveal.visible,.video-slide.active .reveal{opacity:1;transform:translateY(0)}.reveal-wipe{opacity:0;transition:all 1s cubic-bezier(.16,1,.3,1);transform:translateY(60px)}.reveal-wipe.visible,.video-slide.active .reveal-wipe{opacity:1;transform:translateY(0)}.reveal-flip{opacity:0;transform-origin:bottom;transition:all .8s cubic-bezier(.16,1,.3,1);transform:perspective(1000px)rotateX(-20deg)translateY(40px)}.reveal-flip.visible,.video-slide.active .reveal-flip{opacity:1;transform:perspective(1000px)rotateX(0)translateY(0)}.reveal-left{opacity:0;transition:all 1s cubic-bezier(.16,1,.3,1);transform:translate(-60px)}.reveal-left.visible,.video-slide.active .reveal-left{opacity:1;transform:translate(0)}.reveal-right{opacity:0;transition:all 1s cubic-bezier(.16,1,.3,1);transform:translate(60px)}.reveal-right.visible,.video-slide.active .reveal-right{opacity:1;transform:translate(0)}.reveal-type{opacity:0;clip-path:inset(0 100% 0 0);transition:clip-path 1.5s cubic-bezier(.4,0,.2,1),opacity .5s}.reveal-type.visible,.video-slide.active .reveal-type{opacity:1;clip-path:inset(0)}.reveal-scale{opacity:0;transition:all .8s cubic-bezier(.16,1,.3,1);transform:scale(.85)translateY(20px)}.reveal-scale.visible,.video-slide.active .reveal-scale{opacity:1;transform:scale(1)translateY(0)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.reveal-delay-4{transition-delay:.4s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-soft{0%,to{box-shadow:0 0 #6b273733}50%{box-shadow:0 0 0 12px #6b273700}}@keyframes spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer-gold{0%{background-position:-200%}to{background-position:200%}}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:var(--cream-2)}::-webkit-scrollbar-thumb{background:var(--gold-2);border-radius:3px}@media (max-width:768px){:root{--section-pad-v:60px;--section-pad-h:24px}}
