@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400&family=Italiana&family=WindSong:wght@400;500&display=swap";@import "https://fonts.googleapis.com/css2?family=Noto+Serif+Tamil:wght@400;500&display=swap";@import "https://fonts.googleapis.com/css2?family=Bodoni+Moda:opsz,wght@6..96,500;6..96,600&family=Great+Vibes&family=Playfair+Display:ital,wght@0,600;1,500&display=swap";:root{--ivory:#f7f1e7;--paper:#fbf7ef;--rose:#bc8588;--blush:#e8c9ca;--lav:#d9cee5;--wine:#792f3b;--navy:#101d38;--gold:#aa8956;--ink:#332a29}*{box-sizing:border-box}html{scroll-behavior:smooth;background:#d9d0c7}body{color:var(--ink);background:#d9d0c7;margin:0;font-family:Cormorant Garamond,serif}button,a{font:inherit}img{width:100%;display:block}#root{background:var(--ivory);max-width:540px;min-height:100vh;margin:auto;position:relative;overflow:hidden;box-shadow:0 0 50px #4a3e3425}.hidden{visibility:hidden;height:100vh;overflow:hidden}.visible{visibility:visible}#root:after,.intro:after{content:"";pointer-events:none;opacity:.18;z-index:30;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E");position:fixed;inset:0}.section{text-align:center;padding:110px 29px;position:relative}.section h2,.event-content h3,.reception-copy h3{color:var(--wine);margin:0;font-family:WindSong,cursive;font-size:55px;font-weight:500;line-height:1.15}.section-copy{color:#675956;margin:18px 0;font-size:17px;line-height:1.65}.kicker,.eyebrow{letter-spacing:.27em;font-size:11px;font-weight:600}.tiny-ornament{color:var(--gold);letter-spacing:.5em;margin:0 0 18px;font-size:12px}.flower{fill:none;stroke:currentColor;stroke-width:1.2px;overflow:visible}.butterfly{fill:none;width:82px;stroke:var(--gold);stroke-width:1.1px;margin:auto}.intro{z-index:100;background:linear-gradient(145deg,#e7d7e2,#d3c5df 55%,#d8bfc6);flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.intro:before{content:"";border:1px solid #fff8;border-radius:3px;position:absolute;inset:18px;box-shadow:inset 0 0 0 5px #af8da025}.intro-botanical{color:#8e7481;opacity:.32;position:absolute;inset:0}.intro-botanical .flower{width:180px;position:absolute}.intro-botanical .flower:first-child{top:-15px;left:-50px;transform:rotate(130deg)}.intro-botanical .flower:last-child{bottom:-15px;right:-50px;transform:rotate(-50deg)}.envelope-wrap{perspective:1100px;width:min(88vw,440px)}.envelope{aspect-ratio:1.35;filter:drop-shadow(0 22px 22px #5b3b5435);background:#d5bccb;width:100%;position:relative}.envelope-back{background:linear-gradient(145deg,#e6d7e2,#ceb6c7);border:1px solid #fff5;position:absolute;inset:0}.letter{text-align:center;background:#faf4e9;height:83%;padding-top:28px;transition:transform 1.1s cubic-bezier(.2,.8,.2,1) .25s;position:absolute;bottom:7%;left:8%;right:8%;box-shadow:0 0 12px #73586a33}.letter .butterfly{width:40px}.letter small{letter-spacing:.3em;font-size:8px}.mini-monogram{margin:10px;font-family:Italiana;font-size:27px}.mini-monogram i{color:var(--wine);font-family:WindSong}.flap{position:absolute;inset:0}.flap-left{clip-path:polygon(0 0,52% 51%,0 100%);background:#dac5d2}.flap-right{clip-path:polygon(100% 0,48% 51%,100% 100%);background:#cdb5c6}.flap-bottom{clip-path:polygon(0 100%,50% 46%,100% 100%);background:linear-gradient(#d8c0cf,#c8acbf)}.flap-top{clip-path:polygon(0 0,50% 58%,100% 0);transform-origin:top;z-index:3;backface-visibility:hidden;background:linear-gradient(#eadde6,#d4bdce);transition:transform .9s cubic-bezier(.3,.2,.15,1)}.seal{z-index:5;color:#f7d9b2;cursor:pointer;background:radial-gradient(circle at 35% 30%,#a64d59,#7d2637 45%,#591525 73%);border:0;border-radius:50%;width:75px;height:75px;transition:all .5s;position:absolute;top:47%;left:50%;transform:translate(-50%,-50%);box-shadow:0 4px 10px #38101b88,inset 0 0 0 4px #c8787855,inset 0 0 0 7px #551726}.seal:before{content:"";border:2px solid #6d2434;border-radius:48% 52% 45% 55%;position:absolute;inset:-5px}.seal span{font-family:WindSong;font-size:23px}.is-open .flap-top{z-index:0;transform:rotateX(178deg)}.is-open .letter{z-index:2;transform:translateY(-75%)}.is-open .seal{opacity:0;transform:translate(-50%,-80%)scale(.6)}.tap-copy{color:#6e5363;letter-spacing:.22em;text-transform:uppercase;margin-top:42px;font-size:12px}.invitation-hero{background:radial-gradient(circle at 50% 35%,#fffaf3 0,#f7f1e7 65%);flex-direction:column;justify-content:center;align-items:center;min-height:100svh;display:flex}.corner-flower{color:#ad8c72;opacity:.35;width:145px;position:absolute}.corner-flower.left{top:40px;left:-42px;transform:rotate(145deg)}.corner-flower.right{bottom:40px;right:-50px;transform:rotate(-35deg)}.invitation-hero .butterfly{margin-bottom:38px}.monogram{letter-spacing:.08em;margin-bottom:43px;font-family:Italiana;font-size:54px}.monogram span{color:var(--rose);font-family:WindSong;font-size:48px}.fine-line{border-top:1px solid #ae8f6e88;width:160px;margin:24px auto;position:relative}.fine-line i{background:var(--ivory);color:var(--gold);padding:0 8px;font-size:9px;position:absolute;top:-10px;left:46%}.hero-copy{font-size:18px;font-style:italic;line-height:1.7}.scroll-cue{letter-spacing:.22em;color:#8b7771;font-size:9px;position:absolute;bottom:28px}.scroll-cue span{border-left:1px solid #9a8478;height:25px;margin:0 auto 8px;display:block}.save-date{background:linear-gradient(#f2e9e5 0,#f7f1e7 36%)}.date-ribbon{grid-template-columns:repeat(3,1fr);gap:9px;margin:45px 0;display:grid}.date-ribbon>div{color:#56475e;background:#ddd1e7;border-radius:22px;padding:19px 5px;box-shadow:0 8px 20px #745b7930}.date-ribbon span{letter-spacing:.22em;font-size:9px;display:block}.date-ribbon strong{margin-top:6px;font-family:Italiana;font-size:22px;font-weight:400;display:block}.calendar-date{grid-template-columns:1fr 1.1fr 1fr;align-items:center;margin:70px 0 40px;display:grid}.calendar-date span{letter-spacing:.14em;border-top:1px solid #a88865;border-bottom:1px solid #a88865;padding:13px 0;font-size:12px}.calendar-date strong{color:var(--wine);font-family:Italiana;font-size:83px;font-weight:400;line-height:.8}.date-note{font-size:17px;font-style:italic;line-height:1.6}.countdown{border-top:1px solid #cbbca8;border-bottom:1px solid #cbbca8;grid-template-columns:repeat(4,1fr);margin-top:38px;padding:22px 0;display:grid}.countdown>div+div{border-left:1px solid #d6c8b8}.countdown strong{font-family:Italiana;font-size:24px;font-weight:400;display:block}.countdown span{letter-spacing:.14em;font-size:7px}.story{padding-left:22px;padding-right:22px}.story:before{content:"";background:linear-gradient(#0000,#e9dde225,#0000);position:absolute;inset:0}.story-line{opacity:.55;border-left:1px dashed #b99777;position:absolute;top:255px;bottom:120px;left:50%}.story-item{text-align:left;margin:65px 0 110px;position:relative}.story-photo{border-radius:150px 150px 24px 24px;width:77%;height:390px;position:relative;overflow:hidden;box-shadow:0 18px 38px #47362e26}.story-photo img{object-fit:cover;height:100%;transform:scale(1.08)}.crop-top img{object-position:50% 20%}.crop-middle{border-radius:24px 150px 150px 24px;margin-left:auto}.crop-middle img{object-position:35% 47%;transform:scale(1.5)}.crop-bottom img{object-position:62% 80%;transform:scale(1.35)}.story-photo span{letter-spacing:.08em;background:#f8f0e5e8;border-radius:50%;place-items:center;width:52px;height:52px;font-size:13px;display:grid;position:absolute;bottom:15px;right:15px}.story-text{background:#faf6ef;border:1px solid #e7d9c8;width:82%;margin:-23px 0 0 auto;padding:25px 25px 24px;position:relative;box-shadow:0 8px 25px #604a3b18}.reverse .story-text{margin:-23px auto 0 0}.story-text i{letter-spacing:.2em;color:var(--rose);font-size:10px}.story-text h3{margin:7px 0;font-family:Italiana;font-size:24px;font-weight:400}.story-text p{margin:0;font-size:15px;line-height:1.55}.sparkle{color:var(--gold);font-size:22px;position:absolute;top:44%;right:3%}.reverse .sparkle{left:2%;right:auto}.ceremonies{background:#f4ece2;padding-left:20px;padding-right:20px}.event-card{background:#fbf7ef;border:1px solid #e2d4c1;margin:62px 0 100px;padding:12px 12px 40px;box-shadow:0 18px 40px #6d554126}.event-image{border-radius:180px 180px 14px 14px;height:460px;position:relative;overflow:hidden}.event-image img{object-fit:cover;object-position:center 40%;height:100%}.image-frame{border:1px solid #fbead9aa;border-radius:170px 170px 9px 9px;position:absolute;inset:10px}.event-content{padding:34px 14px 0}.event-date{grid-template-columns:1fr 80px 1fr;align-items:center;margin:24px 0;display:grid}.event-date span{color:var(--wine);border-left:1px solid #c4a983;border-right:1px solid #c4a983;font-family:Italiana;font-size:51px}.event-date strong{letter-spacing:.11em;font-size:10px}.time{font-style:italic}.venue{border-top:1px solid #d9c8b3;margin:28px 5px;padding-top:25px}.venue h4,.reception-details h4{margin:0 0 8px;font-family:Italiana;font-size:21px;font-weight:400}.venue p{color:#675852;margin:0;line-height:1.55}.map-button{background:var(--wine);color:#fff;letter-spacing:.16em;border-radius:30px;align-items:center;gap:9px;margin-top:25px;padding:14px 25px;font-size:10px;text-decoration:none;transition:all .25s;display:inline-flex;box-shadow:0 8px 18px #792f3b40}.map-button:hover{background:#61232e;transform:translateY(-2px)}.map-button span{font-size:16px}.reception-hero{height:650px;margin:0 -20px;position:relative;overflow:hidden}.reception-hero>img{object-fit:cover;object-position:center;height:100%}.reception-shade{background:linear-gradient(#0a173a9c 0,#101d3830 32%,#07112677 80%,#071126db);position:absolute;inset:0}.reception-copy{text-align:center;color:#fff;position:absolute;inset:55px 15px auto}.reception-copy p{letter-spacing:.25em;font-size:9px}.reception-copy h3{color:#fff;text-shadow:0 3px 20px #000;margin:12px;font-size:68px}.reception-copy span,.reception-copy b{letter-spacing:.15em;font-size:11px;display:block}.reception-copy b{margin-top:7px;font-weight:400}.reception-details{padding:55px 22px 90px}.reception-details>p:not(.kicker){font-size:16px;line-height:1.55}.reception-details>.venue{margin-top:32px}.closing{background:linear-gradient(#f7f1e7,#eddfd6);place-items:center;min-height:800px;display:grid;overflow:hidden}.closing:before,.closing:after{content:"";border:1px solid #b8997055;border-radius:50%;width:260px;height:260px;position:absolute;top:60px;left:-170px;box-shadow:0 0 0 18px #b8997010,0 0 0 36px #b8997010}.closing:after{inset:auto -170px 60px auto}.om{color:var(--gold);margin-bottom:28px;font-size:38px}.blessing{font-size:18px;font-style:italic;line-height:1.7}.closing-rule{color:var(--gold);margin:27px;font-size:24px}.closing h2{font-size:58px}.closing h2 small{color:var(--gold);font-size:31px}.closing-date{letter-spacing:.22em;margin:25px;font-size:11px}.thanks{border-top:1px solid #baa27f;border-bottom:1px solid #baa27f;width:80%;margin:34px auto;padding:16px;font-style:italic}.made{letter-spacing:.18em;text-transform:uppercase;margin:40px 0 12px;font-size:10px}.social{color:var(--wine);border:1px solid #ad7e7e;border-radius:20px;gap:8px;padding:9px 15px;font-size:12px;text-decoration:none;display:inline-flex}.music{z-index:50;color:#fff;cursor:pointer;background:#792f3be8;border:1px solid #fff8;border-radius:50%;place-items:center;width:48px;height:48px;display:grid;position:fixed;bottom:22px;left:max(20px,50vw - 250px);box-shadow:0 6px 20px #4d222a55}.music-icon{letter-spacing:-2px;font:700 15px/1 Arial,sans-serif;transform:translate(-1px)}.music.paused .music-icon{letter-spacing:0;font-size:16px;transform:translate(1px)}.music i{opacity:0;border:1px solid #792f3b88;border-radius:50%;position:absolute;inset:-5px}.music.playing i{animation:2s infinite pulse}@keyframes pulse{50%{opacity:1;transform:scale(1.15)}}@media (width>=700px){body{padding:34px 0}.intro{width:540px;left:50%;transform:translate(-50%);box-shadow:0 0 70px #4a3e3455}.section{padding-left:48px;padding-right:48px}.reception-hero{margin-left:-48px;margin-right:-48px}.music{left:calc(50vw - 248px)}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.intro{background:#cfc2e0;justify-content:stretch;align-items:stretch}.intro:before{display:none}.envelope-wrap{perspective:1400px;width:100%;height:100%}.envelope{aspect-ratio:auto;filter:none;background:#cfc2e0;width:100%;height:100%;position:relative;overflow:hidden}.envelope-base,.envelope-wing{background:url(/images/lavender-envelope-v2.jpg) 50%/cover no-repeat;position:absolute;inset:0}.envelope-base{z-index:1;transition:opacity .55s .62s,transform 1.1s}.envelope-wing{z-index:2;will-change:transform;transition:transform 1.1s cubic-bezier(.72,0,.16,1),filter .8s}.wing-left{clip-path:polygon(0 0,52% 48%,0 100%);transform-origin:0}.wing-right{clip-path:polygon(100% 0,48% 48%,100% 100%);transform-origin:100%}.invite-peek{z-index:0;opacity:0;background:#f8f0e5;flex-direction:column;justify-content:center;align-items:center;transition:opacity .65s .45s,transform 1.15s .3s;display:flex;position:absolute;inset:22px;transform:scale(.9);box-shadow:inset 0 0 0 1px #c9b18a}.invite-peek:before{content:"";border:1px solid #d8c6a9;position:absolute;inset:12px}.invite-peek span{letter-spacing:.3em;font-size:10px}.invite-peek strong{color:var(--wine);margin-top:15px;font-family:WindSong;font-size:42px;font-weight:500}.invite-peek i{color:var(--gold);font-weight:400}.cover-monogram{z-index:4;text-align:center;color:#fff;text-shadow:0 2px 5px #796b8940;transition:opacity .35s,transform .7s;position:absolute;top:8.5%;left:0;right:0}.cover-monogram strong{font-family:WindSong;font-size:52px;font-weight:500;line-height:1;display:block}.cover-monogram strong i{font-size:38px;font-weight:400}.cover-monogram span{letter-spacing:.24em;margin-top:8px;font-size:11px;font-weight:600;display:block}.envelope .seal{z-index:6;color:#8b6b84;cursor:pointer;-webkit-tap-highlight-color:transparent;background:radial-gradient(circle at 38% 30%,#eadce9,#c4a9c2 57%,#9a7897 100%);border:0;border-radius:48% 52% 46% 54%;width:92px;height:92px;transition:opacity .35s,transform .6s cubic-bezier(.2,.8,.2,1);position:absolute;top:48.2%;left:50%;transform:translate(-50%,-50%);box-shadow:0 7px 16px #59475e66,inset 0 0 0 4px #f5edf3,inset 0 0 0 8px #a987a755}.envelope .seal:before{content:"";border:2px solid #aa8aa8;border-radius:52% 48% 55% 45%;position:absolute;inset:-6px;box-shadow:inset 0 0 0 2px #e8d8e6}.seal-edge{border:1px solid #91728e;border-radius:50%;position:absolute;inset:13px;box-shadow:inset 0 0 0 2px #dac7d8}.envelope .seal svg{fill:none;stroke:#81667e;stroke-width:1.15px;width:54px;height:54px;position:absolute;inset:19px}.envelope .seal:focus-visible{outline-offset:7px;outline:3px solid #fff}.intro .tap-copy{z-index:8;color:#66566f;letter-spacing:.2em;text-transform:uppercase;pointer-events:none;white-space:nowrap;background:#eee6f3cc;border-radius:18px;margin:0;padding:9px 14px;font-size:10px;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.is-open .envelope-base{opacity:0;transform:scale(1.08)}.is-open .invite-peek{opacity:1;transform:scale(1)}.is-open .seal{opacity:0;pointer-events:none;transform:translate(-50%,-50%)scale(.55)rotate(-12deg)}.reference-invite{text-align:center;color:#70695f;background:#faf8f0;flex-direction:column;align-items:center;min-height:100svh;padding:58px 26px 72px;display:flex;position:relative;overflow:hidden}.reference-invite:before{content:"";pointer-events:none;background:radial-gradient(circle,#fffdf8 0,#f8f5ed 74%,#f1eee5 100%);position:absolute;inset:0}.reference-invite>*{z-index:1;position:relative}.invite-edge{z-index:0;pointer-events:none;border:1px solid #9a8f7740;border-radius:50%;width:54px;position:absolute;top:-8%;bottom:10%}.invite-edge-left{left:-45px}.invite-edge-right{top:20%;right:-47px}.ganesha-mark{width:116px;height:116px;margin:0 auto 17px}.ganesha-mark img{object-fit:contain;width:100%;height:100%}.tamil-block h1{color:#756b59;margin:0 0 12px;font-family:Noto Serif Tamil,serif;font-size:clamp(15px,4.4vw,20px);font-weight:500;line-height:1.35}.tamil-block h1 span{white-space:nowrap;display:block}.tamil-block p{color:#81796c;margin:0;font-family:Noto Serif Tamil,serif;font-size:11px;line-height:1.8}.tamil-block small{color:#81796c;margin-top:3px;font-family:Noto Serif Tamil,serif;font-size:10px;display:block}.invite-diamond{color:#d4a3a5;justify-content:center;align-items:center;height:27px;margin:4px 0 13px;font-size:9px;display:flex}.invite-diamond:before,.invite-diamond:after{content:"";border-top:1px solid #cab9aa55;width:36px;position:absolute;transform:rotate(-8deg)}.invite-diamond:before{margin-left:-52px}.invite-diamond:after{margin-left:52px}.blessing-copy{color:#77716a;font-size:16px;line-height:1.55}.blessing-copy p{margin:0 0 12px}.couple-introduction{grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);align-items:start;width:100%;margin-top:4px;display:grid}.person h2{color:#74675e;white-space:nowrap;margin:0 0 10px;font-family:WindSong,cursive;font-size:45px;font-weight:500;line-height:1}.person p{color:#888077;margin:0;font-size:12px;line-height:1.6}.name-ampersand{color:#8b8177;padding-top:31px;font-family:Cormorant Garamond,serif;font-size:26px}.invite-footer-diamond{color:#d8a2a7;align-self:flex-start;margin:27px 0 5px 31px;font-size:11px;transform:rotate(45deg)}.reference-scroll{color:#9a938b;flex-direction:column;align-items:center;margin-top:auto;display:flex}.reference-scroll span{letter-spacing:.24em;font-family:Arial,sans-serif;font-size:10px}.reference-scroll i{margin-top:10px;font-size:16px;font-style:normal;line-height:1}@media (height<=740px){.reference-invite{padding-top:34px;padding-bottom:44px}.ganesha-mark{width:94px;height:94px;margin-bottom:10px}.tamil-block h1,.invite-diamond{margin-bottom:7px}.blessing-copy{font-size:14px}.person h2{font-size:39px}.invite-footer-diamond{margin-top:16px}}.scratch-date-section{text-align:center;color:#71685f;background:#faf8f0;min-height:100svh;padding:91px 18px 70px;position:relative;overflow:hidden}.scratch-date-section:before{content:"";pointer-events:none;background:radial-gradient(circle at 48% 35%,#fffdf8 0,#f9f6ee 66%,#f0ece3 100%);position:absolute;inset:0}.scratch-date-section>*{z-index:1;position:relative}.save-heading>p{letter-spacing:.3em;color:#8f877e;margin:0 0 5px;font-family:Arial,sans-serif;font-size:9px}.save-heading h2{color:#775c57;margin:0 0 15px;font-family:WindSong,cursive;font-size:49px;font-weight:500;line-height:1.06}.save-heading>span{color:#81766d;font-size:15px;display:block}.scratch-date-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:29px 0 31px;display:grid}.reveal-sprinkles{z-index:8;pointer-events:none;position:absolute;inset:-35px -8px;overflow:visible}.reveal-sprinkles i{--rise:72px;left:var(--x);color:#c29b55;text-shadow:0 1px 5px #fff;opacity:0;animation:sprinkleBurst 1.35s var(--delay) cubic-bezier(.12,.72,.25,1) both;font-size:13px;font-style:normal;position:absolute;top:55%}.reveal-sprinkles i:nth-child(3n+1){color:#bd7f86;--rise:92px;font-size:10px}.reveal-sprinkles i:nth-child(3n+2){color:#d2b873;--rise:58px;font-size:15px}.reveal-sprinkles i:nth-child(4n){color:#9d8bb0;--rise:105px}@keyframes sprinkleBurst{0%{opacity:0;transform:translate(-50%,-20%)scale(.15)rotate(0)}18%{opacity:1}70%{opacity:1}to{opacity:0;transform:translate(-50%,calc(-50% - var(--rise))) scale(1.15) rotate(145deg)}}.scratch-card{background:#fbf9f3;border:1px solid #cfc7bb;border-radius:16px;flex-direction:column;align-items:center;height:119px;padding-top:20px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 18px #d5cdc333}.scratch-card>span{letter-spacing:.2em;color:#978d84;z-index:1;font-family:Arial,sans-serif;font-size:8px}.scratch-card>strong{color:#473d39;z-index:1;margin-top:14px;font-family:Cormorant Garamond,serif;font-size:21px;font-weight:500;line-height:1}.scratch-card canvas{z-index:3;touch-action:none;cursor:crosshair;border-radius:9px;width:calc(100% - 14px);height:74px;transition:opacity .65s,transform .65s;position:absolute;bottom:8px;left:7px;right:7px;box-shadow:inset 0 0 0 1px #b8abb944}.scratch-card canvas:focus-visible{outline:2px solid var(--wine);outline-offset:-2px}.scratch-card>i{z-index:4;color:#bd927f;opacity:0;pointer-events:none;font-style:normal;transition:all .55s .2s;position:absolute;bottom:7px;right:8px;transform:scale(.3)rotate(-30deg)}.scratch-card.date-revealed canvas{opacity:0;pointer-events:none;transform:scale(.9)}.scratch-card.date-revealed>strong{animation:.65s both dateBloom}.scratch-card.date-revealed>i{opacity:1;transform:scale(1)rotate(0)}@keyframes dateBloom{0%{opacity:.2;transform:scale(.8)}70%{transform:scale(1.08)}to{opacity:1;transform:scale(1)}}.new-chapter{margin-top:11px}.new-chapter>p{color:#766d64;margin:0;font-size:20px;line-height:1.35}.date-sparkles{color:#bfa564;justify-content:space-around;align-items:center;height:28px;padding:0 5px;display:flex}.date-sparkles span:nth-child(2){color:#b77b7f;font-size:13px}.date-sparkles span:nth-child(3){color:#c7ad65;font-size:15px}.date-sparkles span:nth-child(4){color:#9b8666;font-size:7px}.date-sparkles span:nth-child(5){color:#bd8f8b}.new-chapter>small{letter-spacing:.14em;color:#8d847c;font-family:Arial,sans-serif;font-size:9px}.scratch-date-section .countdown{border-top:1px solid #d4ccc0;border-bottom:1px solid #d4ccc0;margin-top:36px;padding:27px 0 22px;position:relative}.scratch-date-section .countdown:before,.scratch-date-section .countdown:after{content:"✦  ·  ◇  ·  ✧  ·  ◆";text-align:center;color:#c9a984;letter-spacing:1.35em;white-space:nowrap;font-size:8px;position:absolute;top:5px;left:0;right:0;overflow:hidden}.scratch-date-section .countdown:after{color:#bd9293;top:auto;bottom:5px;transform:rotate(180deg)}.scratch-date-section .countdown>div+div{border:0}.scratch-date-section .countdown strong{color:#5f544d;font-family:Cormorant Garamond,serif;font-size:28px}.scratch-date-section .countdown span{letter-spacing:.16em;color:#928981;font-family:Arial,sans-serif;font-size:7px}@media (height<=740px){.scratch-date-section{padding-top:55px;padding-bottom:48px}.scratch-date-grid{margin-top:20px;margin-bottom:22px}.scratch-card{height:105px}.scratch-card canvas{height:63px}.new-chapter>p{font-size:18px}.scratch-date-section .countdown{margin-top:25px}}.envelope .seal{background:radial-gradient(at 38% 27%,#eee5ee 0,#d9c6d8 38%,#bea4bc 68%,#9f7f9d 100%);border-radius:48% 52% 49% 51%/45% 47% 53% 55%;width:106px;height:114px;box-shadow:0 8px 17px #59475e75,inset 0 0 0 3px #f3eaf2,inset 0 0 0 8px #b595b255,inset 2px 3px 7px #fff9}.envelope .seal:before{border:2px solid #a989a7;border-radius:54% 46% 52% 48%/48% 54% 46% 52%;inset:-7px;box-shadow:0 2px 3px #715d7040,inset 0 0 0 3px #eadbe8}.envelope .seal:after{content:"";pointer-events:none;border:1px solid #f8f1f7aa;border-radius:49%/46%;position:absolute;inset:5px}.seal-edge{border:1.3px solid #8f718d;border-radius:50%/48%;inset:12px 13px;box-shadow:inset 0 0 0 3px #decade,0 0 0 2px #b695b355}.envelope .seal .traced-seal-art{fill:none;stroke:#80667e;stroke-width:1.25px;stroke-linecap:round;stroke-linejoin:round;width:90px;height:98px;position:absolute;inset:8px}.traced-seal-art .seal-inner-ring{stroke-width:.8px;opacity:.72}.traced-seal-art .wing-detail{stroke-width:.8px;opacity:.9}.traced-seal-art .laurel-trace{stroke-width:1px}.traced-seal-art .seal-flourish{stroke-width:.9px}.envelope .seal:hover{transform:translate(-50%,-50%)scale(1.025);box-shadow:0 10px 22px #59475e8a,inset 0 0 0 3px #f7eef6,inset 0 0 0 8px #b595b255,inset 2px 3px 7px #fff}.single-story{padding-bottom:120px}.single-story:before{background:linear-gradient(#0000,#e9dde234 58%,#0000)}.single-story-photo{background:linear-gradient(145deg,#fffdf8,#f4eadc);border:1px solid #c9a875;border-radius:18px;width:min(100%,440px);margin:48px auto 0;padding:10px;animation:4.8s ease-in-out infinite storyFrameGlow;position:relative;box-shadow:0 18px 42px #49372f2b,0 3px 10px #7f65451f}.single-story-photo:before{content:"";pointer-events:none;border:1px solid #e3cfad;border-radius:14px;position:absolute;inset:5px}.single-story-photo img{aspect-ratio:2/3;object-fit:contain;object-position:center;will-change:transform,filter;border-radius:10px;width:100%;height:auto;animation:7s ease-in-out infinite storyPortraitDrift;display:block;position:relative;transform:none}.single-story-frame{pointer-events:none;border:1px solid #fff8ef;border-radius:23px;animation:4.8s ease-in-out infinite storyBorderShimmer;position:absolute;inset:-6px;box-shadow:0 0 0 1px #b88e5f59}.single-story-frame:after{content:"✦";color:#fff3c4;background:#b98962;border-radius:50%;place-items:center;width:25px;height:25px;animation:2.8s ease-in-out infinite storySparkle;display:grid;position:absolute;top:13%;right:-9px;box-shadow:0 4px 14px #6c4a3650}@keyframes storyPortraitDrift{0%,to{filter:saturate();transform:scale(1)}50%{filter:saturate(1.06)brightness(1.02);transform:scale(1.012)translateY(-2px)}}@keyframes storyFrameGlow{0%,to{box-shadow:0 18px 42px #49372f2b,0 3px 10px #7f65451f}50%{box-shadow:0 23px 50px #8e63353b,0 0 24px #d9ad6c36}}@keyframes storyBorderShimmer{0%,to{border-color:#fff8ef;box-shadow:0 0 0 1px #b88e5f59}50%{border-color:#f7dba9;box-shadow:0 0 0 1px #c69a657d,0 0 18px #e7c37b42}}@keyframes storySparkle{0%,to{opacity:.55;transform:scale(.82)rotate(0)}50%{opacity:1;transform:scale(1.08)rotate(18deg);box-shadow:0 4px 18px #d0a05280}}.double-date-section{padding-top:82px;padding-bottom:74px}.double-date-section .save-heading{margin-bottom:48px}.double-date-section .save-heading h2{margin-bottom:0}.event-scratch-panel{position:relative}.event-date-heading h3{color:#775c57;margin:0 0 11px;font-family:WindSong,cursive;font-size:43px;font-weight:500;line-height:1.1}.event-date-heading p{color:#81766d;margin:0;font-size:15px}.event-scratch-panel .scratch-date-grid{margin-top:27px}.date-section-divider{color:#b69269;justify-content:center;align-items:center;height:91px;display:flex}.date-section-divider:before,.date-section-divider:after{content:"";border-top:1px solid #d2c8ba;width:34%}.date-section-divider span{color:#b9898d;margin:0 17px;font-size:18px}.double-date-section>.countdown{margin-top:64px}@media (height<=740px){.double-date-section{padding-top:58px}.double-date-section .save-heading{margin-bottom:39px}.date-section-divider{height:75px}}.envelope .seal{width:118px;height:118px;box-shadow:none;background:0 0;border:0;border-radius:50%;padding:0;overflow:visible}.envelope .seal:before,.envelope .seal:after,.envelope .seal-edge,.envelope .seal .traced-seal-art{display:none}.photo-seal{object-fit:contain;filter:drop-shadow(0 8px 8px #53405255);width:100%;height:100%;transition:filter .3s;display:block}.envelope .seal:hover{box-shadow:none;background:0 0;transform:translate(-50%,-50%)scale(1.035)}.envelope-wing{will-change:transform;transition-property:transform,filter;transition-duration:.82s;transition-timing-function:cubic-bezier(.68,0,.18,1)}.wing-right{clip-path:polygon(100% 0,50% 50%,100% 100%);transform-origin:100%;transition-delay:0s}.wing-left{clip-path:polygon(0 0,50% 50%,0 100%);transform-origin:0;transition-delay:.28s}.wing-top{clip-path:polygon(0 0,100% 0,50% 50%);transform-origin:top;transition-delay:.56s}.wing-bottom{clip-path:polygon(0 100%,50% 50%,100% 100%);transform-origin:bottom;transition-delay:.84s}.is-open .envelope-base{opacity:0;transition:opacity 80ms linear;transform:none}.is-open .invite-peek{opacity:1;transition-delay:0s;transform:scale(1)}.is-open .seal,.is-open .seal:hover{opacity:0;pointer-events:none;transform:translate(-50%,-50%)scale(.7)rotate(-8deg)}.envelope-wrap{perspective:1800px}.envelope{transform-style:preserve-3d}.envelope-wing{backface-visibility:hidden;transform-style:preserve-3d;filter:drop-shadow(0 0 #0000);transition-duration:.88s;transition-timing-function:cubic-bezier(.45,.02,.18,1)}.wing-right{transform-origin:100%;transition-delay:80ms}.wing-left{transform-origin:0;transition-delay:.36s}.wing-top{transform-origin:50% 0;transition-delay:.64s}.wing-bottom{transform-origin:50% 100%;transition-delay:.92s}.is-open .wing-right{filter:drop-shadow(-12px 2px 12px #47364755);transform:rotateY(-179deg)}.is-open .wing-left{filter:drop-shadow(12px 2px 12px #47364755);transform:rotateY(179deg)}.is-open .wing-top{filter:drop-shadow(0 12px 12px #47364755);transform:rotateX(179deg)}.is-open .wing-bottom{filter:drop-shadow(0 -12px 12px #47364755);transform:rotateX(-179deg)}.is-open .invite-peek{animation:1.45s cubic-bezier(.2,.8,.2,1) .74s both invitationEmerge}.is-open .seal,.is-open .seal:hover{animation:.55s cubic-bezier(.2,.8,.2,1) both sealLift}@keyframes sealLift{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}45%{opacity:1;transform:translate(-50%,-58%)scale(1.08)rotate(-5deg)}to{opacity:0;transform:translate(-50%,-72%)scale(.72)rotate(-12deg)}}@keyframes invitationEmerge{0%{opacity:.25;transform:scale(.94)translateY(18px)}55%{opacity:.85;transform:scale(.975)translateY(5px)}to{opacity:1;transform:scale(1)translateY(0)}}main.visible{animation:1.15s cubic-bezier(.2,.8,.2,1) both pageReveal;position:relative}.wedding-ambience{z-index:24;pointer-events:none;max-width:540px;margin:auto;position:fixed;inset:0;overflow:hidden}.falling-petal{left:var(--left);opacity:0;width:10px;height:15px;animation:petalFall var(--duration) var(--delay) linear infinite;will-change:transform;background:linear-gradient(145deg,#f3d1d1,#c9878d);border-radius:85% 15% 75% 25%;position:absolute;top:-8%;box-shadow:0 0 8px #fff7}.falling-petal:nth-child(3n){background:linear-gradient(145deg,#f5e4ba,#c8a258);width:7px;height:11px}.falling-petal:nth-child(4n){background:linear-gradient(145deg,#eadcf0,#aa8db8);transform:scale(.8)}@keyframes pageReveal{0%{opacity:0}to{opacity:1}}@keyframes petalFall{0%{opacity:0;transform:translateY(-8vh)rotate(0)}8%{opacity:.66}70%{opacity:.48}to{opacity:0;transform:translate3d(var(--drift),108vh,0) rotate(540deg)}}.reference-invite:after,.scratch-date-section:after,.ceremonies:after{content:"";z-index:0;pointer-events:none;border:1px solid #0000;border-image:linear-gradient(145deg,#c69b5b55,#0000 28% 72%,#bb7a8155) 1;position:absolute;inset:10px}.reference-invite:before{animation:7s ease-in-out infinite alternate paperGlow}.ganesha-mark{filter:drop-shadow(0 8px 12px #bd8d5a20);animation:4.8s ease-in-out infinite divineFloat}.ganesha-mark:after{content:"";z-index:-1;background:radial-gradient(circle,#e9c77b2e,#0000 66%);border-radius:50%;animation:3.6s ease-in-out infinite haloPulse;position:absolute;inset:11%}.person h2,.save-heading h2,.event-date-heading h3,.ceremonies h2,.closing h2{background:linear-gradient(100deg,#713840 8%,#a87850 42%,#6f3d41 70%,#713840 92%) 0 0/220%;color:#0000;-webkit-background-clip:text;background-clip:text;animation:8s ease-in-out infinite titleSheen}.invite-diamond span,.invite-footer-diamond,.tiny-ornament,.closing-rule{animation:3.2s ease-in-out infinite ornamentTwinkle;display:inline-block}@keyframes divineFloat{50%{transform:translateY(-7px)scale(1.015)}}@keyframes haloPulse{50%{opacity:.45;transform:scale(1.18)}}@keyframes paperGlow{0%{filter:hue-rotate();opacity:.88}to{filter:hue-rotate(-8deg);opacity:1}}@keyframes titleSheen{0%,28%{background-position:100%}72%,to{background-position:-100%}}@keyframes ornamentTwinkle{0%,to{opacity:.52;transform:scale(.88)rotate(0)}50%{opacity:1;transform:scale(1.12)rotate(8deg)}}.scratch-card{transition:transform .35s,box-shadow .35s,border-color .35s}.scratch-card:before{content:"";z-index:2;animation:cardGleam 6s calc(var(--petal,0) * .1s) ease-in-out infinite;pointer-events:none;background:linear-gradient(105deg,#0000 42%,#fff8 49%,#0000 56%);position:absolute;inset:-45% -70%;transform:translate(-55%)rotate(8deg)}.scratch-card:hover{border-color:#c4a36e;transform:translateY(-4px);box-shadow:0 12px 24px #755f4722,inset 0 0 18px #d5cdc333}.date-section-divider span{animation:3s ease-in-out infinite dividerBloom}.date-section-divider:before,.date-section-divider:after{transform-origin:50%;animation:3s ease-in-out infinite lineBreathe}.date-sparkles span{animation:3.2s ease-in-out infinite sparkleDance;display:inline-block}.date-sparkles span:nth-child(2){animation-delay:.35s}.date-sparkles span:nth-child(3){animation-delay:.7s}.date-sparkles span:nth-child(4){animation-delay:1.05s}.date-sparkles span:nth-child(5){animation-delay:1.4s}@keyframes cardGleam{0%,65%{transform:translate(-55%)rotate(8deg)}82%,to{transform:translate(55%)rotate(8deg)}}@keyframes dividerBloom{50%{color:#c89954;transform:rotate(45deg)scale(1.22)}}@keyframes lineBreathe{50%{opacity:.55;transform:scaleX(.76)}}@keyframes sparkleDance{0%,to{opacity:.5;transform:translateY(0)rotate(0)}50%{opacity:1;transform:translateY(-5px)rotate(35deg)}}.ceremonies{isolation:isolate;background:radial-gradient(circle at 50% 4%,#fffaf2 0,#f4ece2 38%,#efe2d6 100%)}.ceremonies:before{content:"";z-index:-1;pointer-events:none;background-image:radial-gradient(circle at 15% 12%,#c99c5930 0 1px,#0000 2px),radial-gradient(circle at 84% 20%,#bb7e8830 0 1px,#0000 2px);background-size:42px 42px,58px 58px;animation:12s linear infinite ceremonyLights;position:absolute;inset:0}.event-card{isolation:isolate;transition:transform .45s,box-shadow .45s;position:relative}.event-card:before{content:"";pointer-events:none;z-index:-1;background:linear-gradient(125deg,#cba766,#fff3cb,#9f6f42,#c78b94,#cba766) 0 0/250% 250%;border-radius:2px;padding:1px;animation:7s linear infinite borderGlow;position:absolute;inset:-1px}.event-card:hover{transform:translateY(-5px);box-shadow:0 25px 55px #6d554138}.event-image img{will-change:transform;animation:12s ease-in-out infinite alternate portraitDrift}.image-frame{animation:3.8s ease-in-out infinite frameGlow;box-shadow:inset 0 0 18px #f7d79c20}.reception-hero>img{will-change:transform;animation:15s ease-in-out infinite alternate receptionDrift}.reception-hero:after{content:"";pointer-events:none;opacity:.38;background-image:radial-gradient(circle,#fff 0 1px,#0000 1.7px),radial-gradient(circle,#ffd995 0 1px,#0000 1.8px);background-position:12px 22px,44px 8px;background-size:83px 83px,119px 119px;animation:10s ease-in-out infinite alternate starGlide;position:absolute;inset:0}.reception-copy{z-index:2;animation:5s ease-in-out infinite receptionCopyFloat}.map-button{position:relative;overflow:hidden}.map-button:after{content:"";background:#fff5;width:35%;transition:left .65s;position:absolute;inset:-40% auto -40% -55%;transform:skew(-20deg)}.map-button:hover:after{left:125%}@keyframes ceremonyLights{to{background-position:42px 42px,-58px 58px}}@keyframes borderGlow{to{background-position:250% 250%}}@keyframes portraitDrift{0%{transform:scale(1.01)translateY(0)}to{transform:scale(1.075)translateY(-8px)}}@keyframes receptionDrift{0%{transform:scale(1.01)translate(-3px)}to{transform:scale(1.075)translate(6px)}}@keyframes frameGlow{50%{border-color:#fff1cddd;box-shadow:inset 0 0 25px #f9d78c35,0 0 16px #ffe7b120}}@keyframes starGlide{to{opacity:.58;background-position:24px 5px,30px 28px}}@keyframes receptionCopyFloat{50%{transform:translateY(7px)}}.closing:before{animation:28s linear infinite mandalaTurn}.closing:after{animation:34s linear infinite reverse mandalaTurn}.closing .om{filter:drop-shadow(0 0 8px #cda85b55);animation:3.8s ease-in-out infinite omBlessing}.thanks{background:linear-gradient(90deg,#0000,#fff7,#0000);animation:4.5s ease-in-out infinite thanksGlow;position:relative}.music{animation:3.2s ease-in-out infinite musicFloat}@keyframes mandalaTurn{to{transform:rotate(360deg)}}@keyframes omBlessing{50%{filter:drop-shadow(0 0 14px #cda85b88);transform:translateY(-4px)scale(1.08)}}@keyframes thanksGlow{50%{background-color:#fff3;border-color:#b78b52}}@keyframes musicFloat{50%{transform:translateY(-5px)}}@media (prefers-reduced-motion:reduce){.falling-petal{display:none}.ganesha-mark,.person h2,.save-heading h2,.event-date-heading h3,.ceremonies h2,.closing h2,.event-image img,.reception-hero>img,.reception-copy,.closing:before,.closing:after,.closing .om,.music{animation:none!important}}.cover-monogram strong,.invite-peek strong,.monogram,.person h2,.closing h2{letter-spacing:.015em;text-rendering:optimizelegibility;font-family:Great Vibes,WindSong,cursive;font-weight:400}.cover-monogram strong{font-size:58px}.person h2{font-size:52px;line-height:1.08}.closing h2{font-size:64px;line-height:1.1}.closing h2 small,.monogram span,.cover-monogram strong i{font-family:Bodoni Moda,Cormorant Garamond,serif;font-style:italic}.save-heading h2,.event-date-heading h3,.ceremonies h2,.event-content h3,.reception-copy h3,.reception-details>h4,.venue h4{letter-spacing:-.025em;text-rendering:optimizelegibility;font-family:Bodoni Moda,Cormorant Garamond,serif;font-weight:500}.save-heading h2{letter-spacing:-.035em;font-size:46px}.event-date-heading h3{font-size:39px}.ceremonies h2{font-size:48px;line-height:1.08}.event-content h3{font-size:52px}.reception-copy h3{letter-spacing:-.04em;font-size:58px}.reception-details>h4,.venue h4{letter-spacing:.01em}@media (width<=370px){.person h2{font-size:46px}.closing h2{font-size:56px}.ceremonies h2{font-size:43px}.reception-copy h3{font-size:53px}}.reference-invite .ganesha-mark img{filter:drop-shadow(0 7px 9px #b78b5c24);transform-origin:bottom;animation:5.5s ease-in-out infinite ganeshaBlessing}.reference-invite .tamil-block{position:relative}.reference-invite .tamil-block:before{content:"";pointer-events:none;background:radial-gradient(#e7c77825,#0000 68%);height:62px;animation:4.8s ease-in-out infinite blessingAura;position:absolute;inset:-12px -24px auto}.tamil-block h1 span{color:#0000;background:linear-gradient(105deg,#6f6254 15%,#b18545 43%,#f0d99b 50%,#9b743e 57%,#6f6254 85%) 0 0/240% 100%;-webkit-background-clip:text;background-clip:text;animation:5.2s ease-in-out infinite tamilGoldShimmer;position:relative}.tamil-block h1 span+span{animation-delay:.18s}.invite-edge{animation:7s ease-in-out infinite alternate ornamentalEdgeFloat}.invite-edge-right{animation-delay:-3.5s}.invite-diamond span{filter:drop-shadow(0 0 4px #d6a36e70);animation:3s ease-in-out infinite diamondBlessing;display:inline-block}.couple-introduction .person h2{text-shadow:0 2px 9px #0000;animation:4.4s ease-in-out infinite nameGlow}.couple-introduction .bride h2{animation-delay:-2.2s}@keyframes ganeshaBlessing{0%,to{filter:drop-shadow(0 7px 9px #b78b5c24);transform:translateY(0)scale(1)}50%{filter:drop-shadow(0 11px 13px #c99a5d42);transform:translateY(-5px)scale(1.025)}}@keyframes blessingAura{0%,to{opacity:.35;transform:scale(.9)}50%{opacity:1;transform:scale(1.08)}}@keyframes tamilGoldShimmer{0%,28%{background-position:115%}72%,to{background-position:-115%}}@keyframes ornamentalEdgeFloat{0%{opacity:.58;transform:translateY(-7px)}to{opacity:1;transform:translateY(8px)}}@keyframes diamondBlessing{0%,to{opacity:.55;transform:rotate(45deg)scale(.75)}50%{opacity:1;transform:rotate(225deg)scale(1.18)}}@keyframes nameGlow{0%,to{color:#74675e;text-shadow:0 2px 9px #0000}50%{color:#8d675b;text-shadow:0 3px 12px #c99b7452}}.intro{background:radial-gradient(circle at 50% 43%,#8b3446 0,#5f1d2c 48%,#2f111a 100%)}.envelope-base,.envelope-wing{background-image:radial-gradient(circle at 50% 38%,#b98a4c26 0 1px,#0000 2px),repeating-linear-gradient(45deg,#0000 0 28px,#f2d99d0a 29px 30px),linear-gradient(145deg,#7d2b3d 0,#4b1724 52%,#6b2232 100%);background-size:36px 36px,auto,auto}.envelope-base{box-shadow:inset 0 0 90px #1e08108c}.wing-left{filter:brightness(.94)}.wing-right{filter:brightness(.88)}.wing-top{filter:brightness(1.08)}.wing-bottom{filter:brightness(.82)}.envelope:after{content:"";z-index:3;pointer-events:none;border:1px solid #d9b46888;transition:opacity .45s;position:absolute;inset:14px;box-shadow:inset 0 0 0 4px #531723,inset 0 0 0 5px #d9b46844}.south-indian-cover{z-index:3;color:#d8b467;pointer-events:none;transition:opacity .45s,transform .7s;position:absolute;inset:0}.cover-temple-arch{border:1px solid #d8b4678c;border-bottom:0;border-radius:50% 50% 0 0/72% 72% 0 0;width:69%;height:27%;position:absolute;top:13%;left:50%;transform:translate(-50%);box-shadow:0 -1px 16px #e1b86424,inset 0 9px 25px #26070e30}.cover-temple-arch:before,.cover-temple-arch:after{content:"";border:1px solid #d8b4678c;border-top:0;width:11px;height:23px;position:absolute;bottom:-8px}.cover-temple-arch:before{left:-6px}.cover-temple-arch:after{right:-6px}.cover-temple-arch span{background:#6d2434;border:1px solid #d8b467;width:18px;height:18px;position:absolute;top:-9px;left:50%;transform:translate(-50%)rotate(45deg);box-shadow:0 0 14px #e6c67a55}.mango-toran{transform-origin:top;justify-content:space-around;align-items:flex-start;height:72px;display:flex;position:absolute;top:3.5%;left:5%;right:5%}.mango-toran>i{opacity:.85;border-top:2px solid #d8b467;border-radius:50%;height:14px;position:absolute;top:7px;left:0;right:0}.mango-toran span{transform-origin:50% 0;background:linear-gradient(135deg,#a6ad55,#416639 68%,#26452d);border:1px solid #dfc27555;border-radius:80% 12% 74% 18%;width:17px;height:36px;margin-top:10px;animation:3.8s ease-in-out infinite leafSway;display:block}.mango-toran span:nth-child(2n){margin-top:17px;animation-delay:-1.1s}.mango-toran span:nth-child(3n){margin-top:7px;animation-delay:-2.2s}.jasmine-string{flex-direction:column;gap:7px;display:flex;position:absolute;top:6%}.jasmine-left{left:5.5%}.jasmine-right{right:5.5%}.jasmine-string span{background:radial-gradient(circle at 35% 30%,#fff,#f3e6ce 70%,#c6a669);border-radius:55% 45%;width:10px;height:10px;animation:2.8s ease-in-out infinite jasmineGlow;box-shadow:0 0 8px #fff6}.jasmine-string span:nth-child(2n){animation-delay:-1.4s;transform:translate(4px)}.cover-kolam{fill:none;stroke:#e4c276;stroke-width:1.05px;stroke-linecap:round;stroke-linejoin:round;opacity:.42;width:155px;height:155px;position:absolute;bottom:8%;left:50%;transform:translate(-50%)}.cover-kolam g{stroke-dasharray:520;stroke-dashoffset:520px;animation:4.2s .2s forwards drawKolam}.cover-lamp{color:#d7aa4c;filter:drop-shadow(0 6px 7px #19070b88);width:42px;height:105px;position:absolute;bottom:5.5%}.lamp-left{left:8%}.lamp-right{right:8%}.cover-lamp i{transform-origin:50% 100%;background:radial-gradient(circle at 55% 68%,#fff8b5,#ffae28 45%,#d64c1e 72%,#0000 74%);border-radius:60% 40%;width:12px;height:22px;animation:1.25s ease-in-out infinite flameFlicker;position:absolute;top:0;left:15px}.cover-lamp b{background:linear-gradient(#f1cf75,#a66c24);border-radius:5px 5px 18px 18px;width:34px;height:13px;position:absolute;top:20px;left:4px;box-shadow:inset 0 -3px 4px #714515}.cover-lamp span{background:linear-gradient(90deg,#8a571c,#e8bd5e,#845016);width:6px;height:53px;position:absolute;top:31px;left:18px}.cover-lamp:before{content:"";background:linear-gradient(#e5b95c,#80501b);border-radius:50% 50% 3px 3px;width:25px;height:10px;position:absolute;bottom:9px;left:9px}.cover-lamp:after{content:"";background:linear-gradient(#dca94b,#724414);border-radius:50% 50% 4px 4px;width:37px;height:11px;position:absolute;bottom:0;left:3px}.cover-monogram{color:#fff5dc;text-shadow:0 3px 18px #16050a,0 0 18px #e7bd6644;top:20%}.cover-monogram strong{color:#fff4dc}.cover-monogram span{color:#e6c57b}.envelope .seal{animation:3.1s ease-in-out infinite coverSealPulse;top:49%}.intro .tap-copy{color:#fff2d5;background:#351019c9;border:1px solid #d5ad6259;box-shadow:0 6px 22px #16050b88}.is-open:after,.is-open .south-indian-cover{opacity:0;transform:scale(1.04)}.is-open .cover-monogram{opacity:0;transform:translateY(-18px)}@keyframes leafSway{0%,to{transform:rotate(-5deg)}50%{transform:rotate(7deg)}}@keyframes jasmineGlow{50%{filter:brightness(1.15);box-shadow:0 0 12px #fff9}}@keyframes drawKolam{to{stroke-dashoffset:0}}@keyframes flameFlicker{0%,to{transform:rotate(-4deg)scaleY(.93)}50%{transform:rotate(4deg)scaleY(1.1)}}@keyframes coverSealPulse{50%{filter:drop-shadow(0 0 13px #f4d38b88)}}.ceremonial-divider{background:linear-gradient(#faf8f0,#f7f1e7);place-items:center;height:82px;margin:-1px 0;display:grid;position:relative;overflow:hidden}.ceremonial-divider svg{fill:none;stroke:#b48849;stroke-width:1.15px;stroke-linecap:round;stroke-linejoin:round;width:88%;max-width:450px;height:68px;overflow:visible}.ceremonial-divider .divider-line{stroke-dasharray:1;stroke-dashoffset:1px;path-length:1;animation:2.2s forwards dividerDraw}.divider-lotus{transform-origin:210px 40px;animation:4s ease-in-out infinite lotusBreathe}.ceremonial-divider circle{fill:#b48849;stroke:none;animation:2.5s ease-in-out infinite ornamentTwinkle}@keyframes dividerDraw{to{stroke-dashoffset:0}}@keyframes lotusBreathe{50%{filter:drop-shadow(0 0 5px #c69b59aa);transform:scale(1.06)}}.reference-invite,.scratch-date-section,.ceremonies,.closing{border-left:4px double #b8925645;border-right:4px double #b8925645}.event-card,.scratch-card,.reception-details{background-image:linear-gradient(135deg,#d0aa6420 1px,#0000 1px);background-size:24px 24px}@media (height<=700px){.mango-toran{height:52px}.mango-toran span{height:28px}.cover-temple-arch{height:25%;top:14%}.cover-monogram{top:20%}.cover-kolam{width:120px;height:120px}.cover-lamp{transform-origin:bottom;transform:scale(.85)}}@media (prefers-reduced-motion:reduce){.mango-toran span,.jasmine-string span,.cover-kolam g,.cover-lamp i,.envelope .seal,.divider-lotus,.ceremonial-divider circle{animation:none!important}.cover-kolam g{stroke-dashoffset:0}}.envelope .seal{background:#681f2f;box-shadow:0 9px 18px #22070d99,0 0 0 1px #d5ae6555}.photo-seal{mix-blend-mode:luminosity;filter:contrast(1.12)brightness(.9)drop-shadow(0 8px 8px #25080f88)}.envelope .seal:hover .photo-seal{filter:contrast(1.16)brightness(.94)drop-shadow(0 11px 11px #25080faa)}.cover-monogram strong,.invite-peek strong,.monogram,.person h2{letter-spacing:-.045em;font-family:Bodoni Moda,Cormorant Garamond,serif;font-style:normal;font-weight:600}.cover-monogram strong{letter-spacing:-.02em;font-size:52px}.invite-peek strong{font-size:39px}.monogram{letter-spacing:-.055em;font-size:47px;line-height:1.08}.person h2{letter-spacing:-.055em;font-size:42px;line-height:1.1}.cover-monogram strong i,.invite-peek strong i,.monogram span{letter-spacing:0;font-family:Cormorant Garamond,serif;font-style:italic;font-weight:400}@media (width<=370px){.person h2{font-size:38px}.monogram{font-size:42px}}.intro{background:radial-gradient(circle at 18% 12%,#b3656d33 0,#0000 28%) 0 0/140% 140%,radial-gradient(circle at 82% 82%,#d0a95d24 0,#0000 30%) 0 0/150% 150%,linear-gradient(145deg,#240b12 0,#651f31 48%,#35101b 100%) 0 0/100% 100%;animation:9s ease-in-out infinite alternate coverAura}.intro:before{content:"";z-index:0;opacity:.28;pointer-events:none;background-image:radial-gradient(circle,#f9d98e 0 1px,#0000 1.8px),radial-gradient(circle,#fff3c8 0 1px,#0000 1.6px);background-position:0 0,34px 18px;background-size:74px 74px,113px 113px;border:0;animation:16s linear infinite coverSparkles;display:block;position:absolute;inset:-12%}.envelope-wrap{z-index:1;animation:5.5s ease-in-out infinite envelopeFloat}.envelope:not(.is-open){transform-origin:50% 55%;animation:5.5s ease-in-out infinite envelopeBreath}.envelope:before{content:"";z-index:4;pointer-events:none;border:1px solid #e8c97999;transition:opacity .45s;animation:3.8s ease-in-out infinite goldFrameGlow;position:absolute;inset:14px;box-shadow:inset 0 0 0 4px #531723,inset 0 0 0 5px #e2c17050,0 0 24px #e9c87a20}.envelope.is-open:before{opacity:0}.envelope:not(.is-open) .south-indian-cover{animation:6s ease-in-out infinite ornamentFloat}.envelope:not(.is-open) .mango-toran{animation:5s ease-in-out infinite toranBreathe}.envelope:not(.is-open) .cover-temple-arch{animation:4.5s ease-in-out infinite archGlow}.envelope:not(.is-open) .cover-monogram{animation:1.3s cubic-bezier(.2,.8,.2,1) both monogramArrival}.cover-monogram strong,.invite-peek strong,.monogram,.person h2{letter-spacing:-.035em;font-family:Playfair Display,Cormorant Garamond,serif;font-weight:600}.cover-monogram strong{background:linear-gradient(105deg,#fff8df 15%,#e4bd68 42%,#fff6d4 55%,#d5a74e 76%,#fff8df 90%) 0 0/230%;color:#0000;-webkit-background-clip:text;background-clip:text;animation:5.5s ease-in-out infinite nameGoldShine}.cover-monogram span{animation:3.2s ease-in-out infinite invitationGlow}.envelope:not(.is-open) .seal{animation:3.1s ease-in-out infinite sealHeartbeat}.intro .tap-copy{animation:2.4s ease-in-out infinite tapGlow!important}@keyframes coverAura{to{background-position:100% 30%,0 70%,50%}}@keyframes coverSparkles{to{transform:translate(36px,74px)rotate(1deg)}}@keyframes envelopeFloat{50%{transform:translateY(-7px)}}@keyframes envelopeBreath{50%{filter:drop-shadow(0 28px 28px #18060ca8)brightness(1.025)}}@keyframes goldFrameGlow{50%{border-color:#ffe4a8d9;box-shadow:inset 0 0 0 4px #531723,inset 0 0 0 5px #f3d88c88,0 0 34px #f4d58b45}}@keyframes ornamentFloat{50%{transform:translateY(3px)}}@keyframes toranBreathe{50%{transform:scaleX(.975)}}@keyframes archGlow{50%{border-color:#f4d68dcc;box-shadow:0 -1px 25px #f0ca7150,inset 0 9px 25px #26070e30}}@keyframes monogramArrival{0%{opacity:0;filter:blur(7px);transform:translateY(-18px)}to{opacity:1;filter:blur();transform:translateY(0)}}@keyframes nameGoldShine{0%,25%{background-position:100%}70%,to{background-position:-100%}}@keyframes invitationGlow{50%{color:#ffe3a1;text-shadow:0 0 14px #ffd98488}}@keyframes sealHeartbeat{0%,to{filter:drop-shadow(0 0 7px #f1c66b55)}50%{filter:drop-shadow(0 0 18px #f5d183aa);transform:translate(-50%,-50%)scale(1.045)}}@keyframes tapGlow{0%,to{opacity:.68;box-shadow:0 6px 22px #16050b88}50%{opacity:1;box-shadow:0 7px 27px #e7c27135}}@media (prefers-reduced-motion:reduce){.intro,.intro:before,.envelope-wrap,.envelope:not(.is-open),.envelope:before,.south-indian-cover,.mango-toran,.cover-temple-arch,.cover-monogram,.cover-monogram strong,.cover-monogram span,.envelope .seal:not(:disabled),.intro .tap-copy{animation:none!important}}.intro{isolation:isolate;background:radial-gradient(circle at 50% 42%,#8e4053 0 9%,#0000 38%),radial-gradient(circle at 10% 10%,#c8898a2b,#0000 32%),linear-gradient(155deg,#21080f,#5e192b 48%,#2b0b15);justify-content:center;align-items:center;width:min(100%,540px);padding:clamp(28px,6svh,64px) 18px 34px;left:50%;transform:translate(-50%)}.cover-atmosphere{pointer-events:none;position:absolute;inset:0;overflow:hidden}.cover-atmosphere .aura{border:1px solid #eccd8240;border-radius:50%;width:410px;height:410px;animation:16s linear infinite auraOrbit;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%)}.cover-atmosphere .aura:before,.cover-atmosphere .aura:after{content:"";border:1px solid #e9c6751c;border-radius:50%;position:absolute;inset:20px;transform:rotate(45deg)}.cover-atmosphere .aura:after{border-radius:12%;inset:55px;transform:rotate(45deg)}.cover-atmosphere .aura-two{opacity:.5;width:510px;height:510px;animation-duration:24s;animation-direction:reverse}.cover-atmosphere b{--angle:calc(var(--spark) * 22.5deg);width:3px;height:3px;transform:rotate(var(--angle)) translateY(clamp(170px,38svh,310px));animation:sparkBreath 3.4s calc(var(--spark) * -.17s) ease-in-out infinite;background:#ffe9a9;border-radius:50%;position:absolute;top:47%;left:50%;box-shadow:0 0 9px #ffd77c}.cover-heading{z-index:3;text-align:center;color:#f7dfad;transition:opacity .4s;position:absolute;top:clamp(28px,6svh,58px)}.cover-heading span{letter-spacing:.38em;font:600 9px/1.4 Arial,sans-serif;display:block}.cover-heading small{letter-spacing:.25em;color:#d6ae6b;margin-top:8px;font-size:11px;display:block}.intro .envelope-wrap{z-index:4;perspective:1600px;filter:drop-shadow(0 30px 32px #13030899);width:min(91vw,455px);height:auto;animation:5.5s ease-in-out infinite heirloomFloat;position:relative}.intro .envelope{aspect-ratio:1.42;filter:none;width:100%;height:auto;transform-style:preserve-3d;background:0 0;overflow:visible}.intro .envelope-base,.intro .envelope-wing{background:radial-gradient(circle at 50% 38%,#f0cf7c1f 0 1px,#0000 2px) 0 0/34px 34px,repeating-linear-gradient(45deg,#0000 0 27px,#efd79709 28px 29px),linear-gradient(145deg,#842e43,#4b1423 54%,#6e2335);border-radius:4px;inset:0}.intro .envelope-base{z-index:1;box-shadow:inset 0 0 65px #2107119c,0 0 0 1px #dab76866}.intro .wing-left,.intro .wing-right,.intro .wing-bottom{z-index:4}.intro .wing-top{z-index:6;transform-origin:50% 0;clip-path:polygon(0 0,100% 0,50% 62%)}.intro .wing-bottom{clip-path:polygon(0 100%,50% 45%,100% 100%)}.intro .wing-left{clip-path:polygon(0 0,53% 51%,0 100%)}.intro .wing-right{clip-path:polygon(100% 0,47% 51%,100% 100%)}.intro .envelope:before,.intro .envelope:after{border-color:#e8c9798c;border-radius:2px;inset:10px}.intro .invite-peek{z-index:2;opacity:0;background:linear-gradient(150deg,#fffaf0,#f4ead8);padding:22px 12px;inset:7% 7% 5%;transform:translateY(18%)scale(.94);box-shadow:0 2px 15px #26081266,inset 0 0 0 1px #c8a866}.intro .invite-peek:after{content:"";pointer-events:none;background:radial-gradient(circle at 50% 20%,#d6ae6428,#0000 42%);position:absolute;inset:18px}.intro .invite-peek span{letter-spacing:.24em;color:#8b6b4e;font:600 7px/1.4 Arial,sans-serif}.intro .invite-peek strong{letter-spacing:0;color:#6d2633;white-space:nowrap;margin-top:10px;font-family:Great Vibes,cursive;font-size:clamp(31px,9vw,46px);font-weight:400}.intro .invite-peek small{color:#8a7567;font-size:12px;font-style:italic}.intro .cover-monogram{z-index:7;text-shadow:0 3px 18px #16050a;pointer-events:none;top:18%}.intro .cover-monogram small{letter-spacing:.34em;color:#dfc17d;margin-bottom:11px;font:600 8px/1.2 Arial,sans-serif;display:block}.intro .cover-monogram strong{letter-spacing:-.03em;font-family:Playfair Display,serif;font-size:clamp(42px,13vw,60px)}.intro .cover-monogram span{letter-spacing:.3em;margin-top:10px;font-size:8px}.intro .south-indian-cover{z-index:5}.intro .cover-temple-arch{height:42%;top:9%}.intro .mango-toran{height:50px;top:0}.intro .jasmine-string{transform-origin:top;top:7%;transform:scale(.78)}.intro .cover-kolam{opacity:.28;width:96px;height:96px;bottom:3%}.intro .cover-lamp{transform-origin:bottom;bottom:2%;transform:scale(.62)}.intro .envelope .seal{z-index:9;filter:drop-shadow(0 9px 12px #1d050b99);width:104px;height:104px;top:54%}.intro .tap-copy{color:#fff1cf;letter-spacing:.22em;background:#24080fcf;border:1px solid #d9b56870;align-items:center;gap:11px;padding:10px 17px;font-size:9px;display:flex;bottom:clamp(23px,4svh,42px);box-shadow:0 8px 25px #12030799}.intro .tap-copy i{color:#dfbb69;font-size:7px;font-style:normal}.intro .is-open .wing-top{z-index:0;transition-delay:.12s;transform:rotateX(178deg)}.intro .is-open .wing-left{transition-delay:.45s;transform:rotateY(158deg)}.intro .is-open .wing-right{transition-delay:.45s;transform:rotateY(-158deg)}.intro .is-open .wing-bottom{transition-delay:.72s;transform:rotateX(-150deg)}.intro .is-open .invite-peek{z-index:8;animation:1.45s cubic-bezier(.16,.8,.2,1) .72s both letterRise}.intro .is-open .south-indian-cover{opacity:0;transition-duration:.45s;transform:scale(.98)}@keyframes heirloomFloat{50%{transform:translateY(-7px)rotateX(.7deg)}}@keyframes auraOrbit{to{transform:translate(-50%,-50%)rotate(360deg)}}@keyframes sparkBreath{0%,to{opacity:.15;scale:.65}50%{opacity:.9;scale:1.25}}@keyframes letterRise{0%{opacity:0;transform:translateY(18%)scale(.94)}45%{opacity:1;transform:translateY(-32%)scale(.98)}to{opacity:1;transform:translateY(-47%)scale(1)}}@media (height<=650px){.cover-heading{top:18px}.intro .envelope-wrap{width:min(78vw,390px)}.intro .tap-copy{bottom:13px}.intro .cover-kolam,.intro .cover-lamp{display:none}}@media (prefers-reduced-motion:reduce){.cover-atmosphere *,.intro .envelope-wrap{animation:none!important}.intro .is-open .invite-peek{opacity:1;transform:translateY(-35%);animation:none!important}}.intro .envelope .seal{width:102px;height:102px;box-shadow:none;isolation:isolate;filter:drop-shadow(0 11px 12px #180308a8);background:0 0;border:0;border-radius:50%;padding:0;overflow:visible}.intro .envelope .seal:before,.intro .envelope .seal:after{display:none}.wax-rim{z-index:0;clip-path:polygon(50% 0,61% 5%,71% 3%,79% 11%,90% 13%,94% 24%,100% 34%,96% 46%,100% 57%,94% 67%,93% 79%,82% 84%,76% 95%,63% 94%,53% 100%,42% 96%,30% 99%,23% 90%,11% 86%,9% 73%,1% 65%,5% 53%,0 42%,6% 31%,7% 19%,19% 14%,27% 5%,39% 6%);background:linear-gradient(145deg,#a94758,#681728 58%,#45101d);animation:3.8s ease-in-out infinite waxEdgeBreathe;position:absolute;inset:-7px;box-shadow:inset 5px 7px 12px #d66c764f,inset -7px -8px 13px #2506108c}.wax-face{z-index:1;color:#e7c47d;background:radial-gradient(circle at 34% 27%,#b95161 0,#842638 38%,#631729 72%,#43101d 100%);border-radius:50%;place-items:center;display:grid;position:absolute;inset:2px;overflow:hidden;box-shadow:inset 3px 4px 8px #e8878b45,inset -5px -6px 10px #26050da6,0 0 0 2px #d58a7138}.wax-face:before{content:"";border:1px solid #e5bd706e;border-radius:50%;position:absolute;inset:8px;box-shadow:inset 0 0 0 3px #3a0a144f,0 0 9px #efc97922}.wax-face svg{fill:none;stroke:#e6c37b;stroke-linecap:round;stroke-linejoin:round;opacity:.82;width:100%;height:100%;position:absolute;inset:0}.seal-ring-outer{stroke-width:1.1px;stroke-dasharray:2 3}.seal-ring-inner{stroke-width:.55px;opacity:.65}.seal-vine{stroke-width:1px}.seal-lotus{stroke-width:.9px}.seal-initials{z-index:2;letter-spacing:-.06em;text-shadow:0 1px 1px #3d0c18,0 0 8px #edcb7b33;margin-top:-4px;font-weight:600;position:relative;font-family:Playfair Display,serif!important;font-size:21px!important}.seal-initials i{color:#f4d89d;font-family:Cormorant Garamond,serif;font-size:16px;font-weight:400}.wax-face small{z-index:2;letter-spacing:.26em;color:#e8c77f;font:600 5px/1 Arial,sans-serif;position:absolute;bottom:24px}.seal-glint{z-index:3;pointer-events:none;border-radius:50%;position:absolute;inset:5px;overflow:hidden}.seal-glint:after{content:"";background:linear-gradient(90deg,#0000,#ffe9ad73,#0000);width:28%;animation:4.2s ease-in-out 1s infinite waxGlint;position:absolute;top:-25%;bottom:-25%;left:-55%;transform:rotate(18deg)}.intro .envelope .seal:hover{box-shadow:none;filter:drop-shadow(0 14px 15px #170308c4);background:0 0;transform:translate(-50%,-50%)scale(1.055)rotate(-2deg)}.intro .envelope:not(.is-open) .seal{animation:3.2s ease-in-out infinite monogramSealPulse}.intro .is-open .seal,.intro .is-open .seal:hover{animation:.65s cubic-bezier(.2,.8,.2,1) both monogramSealBreak}@keyframes waxEdgeBreathe{50%{filter:brightness(1.08);transform:rotate(2deg)scale(1.018)}}@keyframes waxGlint{0%,58%{opacity:0;left:-55%}68%{opacity:1}86%,to{opacity:0;left:125%}}@keyframes monogramSealPulse{0%,to{filter:drop-shadow(0 8px 8px #15030890)}50%{filter:drop-shadow(0 10px 16px #e0b86058);transform:translate(-50%,-50%)scale(1.025)}}@keyframes monogramSealBreak{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}38%{opacity:1;transform:translate(-50%,-60%)scale(1.09)rotate(-4deg)}to{opacity:0;transform:translate(-50%,-88%)scale(.62)rotate(-18deg)}}@media (prefers-reduced-motion:reduce){.wax-rim,.seal-glint:after,.intro .envelope:not(.is-open) .seal{animation:none!important}}.royal-intro{isolation:isolate;background:radial-gradient(at 50% 42%,#4d2830 0,#251419 55%,#10090c 100%);justify-content:center;align-items:center}.royal-intro:before{border:1px solid #b8914a55;display:block;inset:15px;box-shadow:inset 0 0 0 4px #0e080a,inset 0 0 0 5px #d3ad6250}.royal-hall{pointer-events:none;background:linear-gradient(90deg,#0008,#0000 24% 76%,#0008),radial-gradient(circle at 50% 110%,#a86a2b24,#0000 45%);position:absolute;inset:0;overflow:hidden}.royal-arch{border:2px solid #9e793b32;border-bottom:0;border-radius:50% 50% 0 0;width:46%;height:84%;position:absolute;top:-12%;box-shadow:inset 0 0 40px #0008}.royal-arch.arch-left{left:-29%}.royal-arch.arch-right{right:-29%}.torch{background:linear-gradient(90deg,#543218,#ba8546,#3d2414);border-radius:3px;width:7px;height:64px;position:absolute;top:31%;box-shadow:0 0 22px #e89e3945}.torch-left{left:8%}.torch-right{right:8%}.torch b{filter:drop-shadow(0 0 10px #ff9c32);background:radial-gradient(circle at 50% 65%,#fff0a6,#f5a029 38%,#a62c17 72%,#0000 74%);border-radius:70% 30% 65% 35%;width:15px;height:30px;animation:.85s ease-in-out infinite alternate royalFlame;position:absolute;top:-24px;left:50%;transform:translate(-50%)}.ember{left:calc(6% + (var(--ember) * 5.15%));width:2px;height:2px;animation:emberRise calc(5s + (var(--ember) * .27s)) calc(var(--ember) * -.41s) linear infinite;background:#efb650;border-radius:50%;position:absolute;bottom:-10px;box-shadow:0 0 7px #f4a63d}.royal-heading{z-index:3;text-align:center;color:#d8b56c;text-shadow:0 2px 8px #000;position:absolute;top:clamp(28px,6svh,55px)}.royal-heading span{letter-spacing:.38em;font:600 9px/1.4 Arial,sans-serif;display:block}.royal-heading small{letter-spacing:.16em;color:#9e7a43;margin-top:9px;font-size:9px;display:block}.royal-scroll{z-index:5;filter:drop-shadow(0 24px 24px #000b);width:min(79vw,390px);height:118px;transition:height 1.75s cubic-bezier(.2,.78,.18,1);animation:5s ease-in-out infinite scrollHover;position:relative}.scroll-shadow{z-index:-1;filter:blur(18px);opacity:.8;background:#000;border-radius:50%;position:absolute;inset:14px 3%}.scroll-sheet{z-index:1;background:linear-gradient(90deg,#ad7a3c,#e4bf78 6%,#f1d699 18%,#e9c77f 82%,#b17c3d 96%);height:46px;transition:height 1.75s cubic-bezier(.2,.78,.18,1);position:absolute;top:36px;left:7%;right:7%;overflow:hidden;box-shadow:inset 0 0 22px #6f391b88}.scroll-sheet:before{content:"";opacity:.38;background-image:radial-gradient(circle at 18% 22%,#6e391a 0 1px,#0000 1.5px),radial-gradient(circle at 72% 67%,#fff2bd 0 1px,#0000 1.5px);background-size:31px 27px,43px 39px;position:absolute;inset:0}.parchment-content{text-align:center;color:#562922;outline-offset:-6px;opacity:0;border:1px solid #8f592b78;outline:1px solid #eac98680;height:340px;padding:18px 8px;transition:opacity .6s 1s,transform 1.05s cubic-bezier(.2,.8,.2,1) .72s;position:absolute;top:34px;left:20px;right:20px;transform:scaleY(.2)}.parchment-content:before,.parchment-content:after{content:"❧";color:#895b2e;font-size:18px;position:absolute;top:6px}.parchment-content:before{left:10px}.parchment-content:after{right:10px;transform:scaleX(-1)}.parchment-content{justify-content:center;align-items:center;display:flex}.parchment-content .parchment-tamil-title{letter-spacing:0;color:#672c2c;text-shadow:0 1px #f7e2a4;white-space:normal;width:auto;min-width:0;max-width:100%;margin:0 auto;padding:24px 8px;font-family:Noto Serif Tamil,serif;font-size:clamp(24px,6vw,32px);font-weight:500;line-height:1.4}.parchment-tamil-title span{white-space:nowrap;overflow-wrap:normal;word-break:keep-all;display:block}.royal-crest{border:1px solid #8d572c;border-radius:50%;justify-content:center;align-items:center;gap:4px;width:61px;height:61px;margin:0 auto 17px;font-family:Playfair Display,serif;font-size:17px;display:flex;box-shadow:inset 0 0 0 4px #dab56e,inset 0 0 0 5px #8d572c}.royal-crest i{font-family:Cormorant Garamond,serif;font-size:13px}.parchment-content p{letter-spacing:.25em;margin:0 0 13px;font:600 7px/1.4 Arial,sans-serif}.parchment-content h1{color:#6d2633;margin:0;font-family:Great Vibes,cursive;font-size:clamp(31px,8vw,42px);font-weight:400;line-height:1}.parchment-content h1 small{font-family:Cormorant Garamond,serif;font-size:23px}.royal-rule{color:#8a5529;align-items:center;gap:8px;width:72%;margin:15px auto;display:flex}.royal-rule:before,.royal-rule:after{content:"";background:#98653580;flex:1;height:1px}.royal-rule i{font-style:normal}.parchment-content>strong{letter-spacing:.19em;font:600 6px/1.5 Arial,sans-serif;display:block}.parchment-content time{letter-spacing:.13em;margin-top:13px;font-family:Playfair Display,serif;font-size:12px;display:block}.scroll-roller{z-index:3;grid-template-columns:27px 1fr 27px;align-items:center;height:30px;transition:transform 1.75s cubic-bezier(.2,.78,.18,1);display:grid;position:absolute;left:0;right:0}.roller-top{top:20px}.roller-bottom{bottom:20px}.scroll-roller b{background:linear-gradient(#d39a4e,#6f381c 35%,#3c1c10 56%,#9b5e2c 82%,#d5a254);border-radius:9px;height:20px;box-shadow:inset 0 0 0 2px #2c140b,0 4px 5px #0008}.scroll-roller i{clip-path:polygon(0 30%,70% 30%,70% 0,100% 18%,100% 82%,70% 100%,70% 70%,0 70%);background:linear-gradient(90deg,#4a2412,#bd8241,#3b1b0e);height:26px}.scroll-roller i:last-child{transform:scaleX(-1)}.royal-ribbon{z-index:5;background:linear-gradient(90deg,#5f1020,#a63143 46%,#651020);width:45px;height:88px;transition:opacity .45s,transform .65s;position:absolute;top:15px;left:50%;transform:translate(-50%);box-shadow:0 3px 10px #0008}.royal-ribbon i,.royal-ribbon b{background:#741526;width:25px;height:31px;position:absolute;bottom:-23px}.royal-ribbon i{clip-path:polygon(0 0,100% 0,70% 100%,45% 72%,15% 100%);left:0}.royal-ribbon b{clip-path:polygon(0 0,100% 0,85% 100%,55% 72%,30% 100%);right:0}.royal-seal{z-index:7;cursor:pointer;color:#e5bf70;background:radial-gradient(circle at 35% 27%,#b34b58,#792234 44%,#48101e 78%);border:0;border-radius:50%;width:77px;height:77px;transition:all .45s;animation:2.8s ease-in-out infinite royalSealPulse;position:absolute;top:59px;left:50%;transform:translate(-50%,-50%);box-shadow:inset 0 0 0 3px #d4707850,inset 0 0 0 7px #53111f,0 8px 13px #0009}.royal-seal:before{content:"";border:1px dashed #d9b567;border-radius:50%;position:absolute;inset:9px}.royal-seal span{font-family:Playfair Display,serif;font-size:17px;font-weight:600;display:block;position:relative}.royal-seal span i{font-family:Cormorant Garamond,serif;font-size:13px}.royal-seal small{letter-spacing:.17em;margin-top:3px;font:600 5px/1 Arial,sans-serif;display:block;position:relative}.royal-seal:hover{filter:brightness(1.12);transform:translate(-50%,-50%)scale(1.07)}.royal-tap{z-index:8;color:#ead39c;letter-spacing:.2em;text-transform:uppercase;white-space:nowrap;background:#10090bc4;border:1px solid #ae85494d;align-items:center;gap:10px;margin:0;padding:10px 16px;font:600 8px/1.2 Arial,sans-serif;display:flex;position:absolute;bottom:clamp(25px,5svh,48px);left:50%;transform:translate(-50%)}.royal-tap i{font-size:6px;font-style:normal}.royal-scroll.is-unfurled{height:min(480px,65svh);animation:none}.is-unfurled .scroll-sheet{height:calc(100% - 72px)}.is-unfurled .royal-ribbon{opacity:0;transform:translate(-50%)scaleX(.25)rotate(12deg)}.is-unfurled .royal-seal{animation:.65s cubic-bezier(.2,.8,.2,1) both sealBreak}.is-unfurled .parchment-content{opacity:1;transform:scaleY(1)}@keyframes royalFlame{to{transform:translate(-50%)scale(.86,1.12)rotate(4deg)}}@keyframes emberRise{0%{opacity:0;transform:translateY(0)}15%{opacity:.75}to{opacity:0;transform:translateY(-92vh)translate(18px)}}@keyframes scrollHover{50%{transform:translateY(-5px)}}@keyframes royalSealPulse{50%{filter:drop-shadow(0 0 13px #e8bb6566);transform:translate(-50%,-50%)scale(1.035)}}@keyframes sealBreak{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}45%{opacity:1;transform:translate(-50%,-65%)scale(1.12)rotate(-7deg)}to{opacity:0;transform:translate(-50%,-115%)scale(.55)rotate(-25deg)}}@media (height<=680px){.royal-heading{top:18px}.royal-scroll.is-unfurled{height:490px;max-height:70svh}.parchment-content{height:calc(100% - 38px);padding-top:8px;top:20px}.royal-crest{width:51px;height:51px;margin-bottom:10px}.royal-rule{margin:10px auto}.royal-tap{bottom:12px}}@media (prefers-reduced-motion:reduce){.torch b,.ember,.royal-scroll,.royal-seal{animation:none!important}.royal-scroll,.scroll-sheet,.parchment-content{transition-duration:.01ms!important}}@media (width<=480px){html,body,#root{width:100%;max-width:100%;overflow-x:hidden}main,section,article,div{min-width:0}p,h1,h2,h3,h4,span,strong,small,a{overflow-wrap:anywhere}.section{padding:76px 18px}.section h2{font-size:clamp(39px,12vw,50px);line-height:1.08}.kicker,.eyebrow{letter-spacing:.2em;font-size:9px;line-height:1.6}.section-copy,.hero-copy,.blessing{font-size:16px;line-height:1.65}.intro{width:100%;padding-left:12px;padding-right:12px}.intro .envelope-wrap{width:min(92vw,430px)}.cover-heading{width:calc(100% - 40px)}.cover-heading span{letter-spacing:.24em}.intro .cover-monogram{left:14px;right:14px}.intro .cover-monogram strong{white-space:normal;font-size:clamp(38px,12vw,52px)}.intro .cover-monogram span{letter-spacing:.2em;font-size:7px;line-height:1.5}.intro .tap-copy,.royal-tap{white-space:normal;text-align:center;max-width:calc(100vw - 28px);line-height:1.45}.reference-invite{min-height:100svh;padding:38px 18px 54px}.ganesha-mark{width:92px;height:92px;margin-bottom:10px}.tamil-block h1{font-size:clamp(14px,4.4vw,17px)}.tamil-block p{font-size:10px;line-height:1.7}.blessing-copy{font-size:14px;line-height:1.55}.couple-introduction{grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr);gap:3px}.person h2{white-space:normal;overflow-wrap:normal;font-size:clamp(29px,9.5vw,40px);line-height:1.05}.person p{font-size:11px;line-height:1.5}.name-ampersand{padding-top:24px;font-size:22px}.reference-scroll span{letter-spacing:.18em;font-size:8px}.scratch-date-section{padding:70px 14px 58px}.save-heading h2{font-size:clamp(36px,11vw,46px)}.save-heading>span{font-size:14px;line-height:1.45}.scratch-date-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.scratch-card{border-radius:12px;height:112px;padding-top:17px}.scratch-card>span{letter-spacing:.12em;font-size:7px}.scratch-card>strong{font-size:clamp(16px,5vw,21px)}.new-chapter>p{font-size:18px}.new-chapter>small{letter-spacing:.1em;font-size:7px;line-height:1.65;display:block}.countdown{gap:2px}.countdown strong,.scratch-date-section .countdown strong{font-size:clamp(20px,7vw,27px)}.countdown span,.scratch-date-section .countdown span{letter-spacing:.08em;font-size:6px}.event-date-heading h3{font-size:clamp(29px,9vw,38px);line-height:1.15}.event-date-heading p{font-size:14px;line-height:1.45}.single-story{padding:72px 16px 88px}.single-story-photo{border-radius:15px;width:min(100%,400px);margin-top:35px;padding:8px}.single-story-photo:before{border-radius:12px;inset:4px}.single-story-photo img{border-radius:8px}.single-story-frame{border-radius:19px;inset:-4px}.ceremonies{padding:72px 14px}.ceremonies h2{font-size:clamp(36px,11vw,46px)}.event-card{margin:42px 0 72px;padding:9px 9px 32px}.event-image{aspect-ratio:4/5;border-radius:120px 120px 12px 12px;height:auto}.image-frame{border-radius:114px 114px 8px 8px;inset:7px}.event-content{padding:28px 8px 0}.event-content h3{font-size:clamp(36px,11vw,48px);line-height:1.1}.event-date{grid-template-columns:minmax(0,1fr) 65px minmax(0,1fr);gap:4px}.event-date span{font-size:42px}.event-date strong{letter-spacing:.08em;font-size:8px;line-height:1.4}.venue h4,.reception-details h4{font-size:19px;line-height:1.3}.venue p,.reception-details>p:not(.kicker){font-size:15px;line-height:1.55}.map-button{letter-spacing:.12em;justify-content:center;max-width:100%;padding:13px 19px;font-size:9px;line-height:1.35}.reception-hero{height:min(620px,150vw);min-height:500px;margin-left:-14px;margin-right:-14px}.reception-copy{inset:38px 18px auto}.reception-copy p{letter-spacing:.18em;font-size:8px;line-height:1.5}.reception-copy h3{margin:10px 0;font-size:clamp(38px,12vw,52px);line-height:1.05}.reception-copy span,.reception-copy b{letter-spacing:.1em;font-size:10px;line-height:1.5}.reception-details{padding:44px 14px 68px}.closing{min-height:720px;padding:76px 18px}.closing h2{font-size:clamp(42px,13vw,58px);line-height:1.08}.closing h2 small{font-size:.55em}.closing-date{letter-spacing:.14em;margin:22px 0;font-size:9px;line-height:1.6}.thanks{width:100%;margin:28px auto;padding:14px 6px;line-height:1.5}.music{width:44px;height:44px;bottom:14px;left:14px;right:auto}}@media (width<=350px){.section{padding-left:13px;padding-right:13px}.reference-invite{padding-left:12px;padding-right:12px}.couple-introduction{grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr)}.person h2{font-size:28px}.person p{font-size:10px}.scratch-date-section{padding-left:10px;padding-right:10px}.scratch-card{height:106px}.scratch-card canvas{width:calc(100% - 8px);left:4px;right:4px}.event-date{grid-template-columns:minmax(0,1fr) 56px minmax(0,1fr)}.event-date span{font-size:36px}}@media (prefers-reduced-motion:reduce){.single-story-photo,.single-story-photo img,.single-story-frame,.single-story-frame:after{animation:none!important}}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{min-width:280px}button,a{touch-action:manipulation}.intro{padding-top:env(safe-area-inset-top);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left)}.music{bottom:max(14px,env(safe-area-inset-bottom));left:max(14px,calc(env(safe-area-inset-left) + 14px))}@media (width<=320px){.section{padding-left:10px;padding-right:10px}.reference-invite{padding-left:9px;padding-right:9px}.couple-introduction{grid-template-columns:minmax(0,1fr) 13px minmax(0,1fr)}.person h2{font-size:25px}.person p{font-size:9px}.scratch-date-grid{gap:3px}.scratch-card{height:100px;padding-top:14px}.event-content{padding-left:3px;padding-right:3px}.event-date{grid-template-columns:minmax(0,1fr) 50px minmax(0,1fr)}.event-date span{font-size:32px}}@media (orientation:landscape) and (height<=520px){.royal-heading{top:10px}.royal-heading small{display:none}.royal-scroll{transform:scale(.78)}.royal-scroll.is-unfurled{height:86svh;max-height:none}.royal-tap{bottom:6px}.reference-invite{min-height:620px}.music{bottom:max(10px,env(safe-area-inset-bottom))}}
