{"id":6,"date":"2026-11-12T11:38:01","date_gmt":"2026-11-12T11:38:01","guid":{"rendered":"https:\/\/aniketsunidhi.love\/?page_id=6"},"modified":"2026-11-12T12:10:06","modified_gmt":"2026-11-12T12:10:06","slug":"home","status":"publish","type":"page","link":"https:\/\/aniketsunidhi.love\/","title":{"rendered":"Home"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"6\" class=\"elementor elementor-6\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7792084 e-flex e-con-boxed e-con e-parent\" data-id=\"7792084\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5313a75 elementor-widget elementor-widget-html\" data-id=\"5313a75\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- ANIKET & SUNIDHI \u2014 COMPLETE ELEMENTOR HTML WIDGET\nPaste this entire file into ONE Elementor HTML widget.\nRESPONSIVE EDITION \u2014 desktop, tablet, mobile and short landscape screens.\nPage Layout: Elementor Canvas. The widget automatically fills the viewport even inside a boxed container.\nFor best results, keep parent\/container padding, margin and gap at 0.\nKeep Elementor motion effects\/entrance animations OFF on the widget and its parent containers.\nTest the published page in a fresh browser tab; the Elementor editor bypasses the opening overlay.\nIncludes: opening doors\/curtains, scratch heart, confetti, countdown (IST), calendar download,\noptional generated chime sound, directions, WhatsApp RSVP, and opening replay.\nSound starts only after the guest taps Sound. RSVP is sent only when the guest presses Send in WhatsApp.\nGoogle Fonts and the embedded Google map require internet access. No Elementor Pro or additional JS library required.\nUse only one copy of this widget per page. Do not paste into a Text Editor widget.\n-->\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=DM+Sans:wght@400;500;600&family=Great+Vibes&family=Pinyon+Script&family=Noto+Serif+Devanagari:wght@400;500&display=swap\" rel=\"stylesheet\">\n<style>\n\/* All presentation styles belong only to this invitation. *\/\n#as-wedding{display:block;position:relative;width:100%;max-width:none;min-width:0;text-align:left;line-height:1.2;-webkit-text-size-adjust:100%;text-size-adjust:100%}\n#as-wedding *,#as-wedding *::before,#as-wedding *::after{box-sizing:border-box}\n#as-wedding h1,#as-wedding h2,#as-wedding h3,#as-wedding p,#as-wedding address{color:inherit;letter-spacing:normal;text-transform:none}\n#as-wedding h1,#as-wedding h2,#as-wedding h3{padding:0}\n#as-wedding p{font-family:inherit}\n#as-wedding a{box-shadow:none;text-decoration-thickness:1px}\n#as-wedding button{width:auto;min-height:0;border-radius:0;box-shadow:none;text-shadow:none;text-transform:none;font-weight:400;line-height:normal}\n#as-wedding input,#as-wedding select,#as-wedding textarea{height:auto;box-shadow:none;min-height:0}\n#as-wedding svg{display:inline-block;max-width:none}\n#as-wedding [id]{scroll-margin-top:80px}\n#as-wedding [hidden]{display:none!important}\n#as-wedding .fade{opacity:1;transform:none}\n#as-wedding{--paper:#f7f3e9;--ink:#35483d;--sage:#77816a;--gold:#a78950;--line:#b5a27966;--serif:'Cormorant Garamond',Georgia,serif;--script:'Great Vibes',cursive;--sans:'DM Sans',Arial,sans-serif}\n#as-wedding *{box-sizing:border-box}\n#as-wedding{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:20px}\n#as-wedding button,#as-wedding a,#as-wedding input,#as-wedding select,#as-wedding textarea{-webkit-tap-highlight-color:transparent}\n#as-wedding button,#as-wedding input,#as-wedding select,#as-wedding textarea{font:inherit}\n#as-wedding button,#as-wedding a{touch-action:manipulation}\n#as-wedding button{cursor:pointer}\n#as-wedding a{color:inherit}\n#as-wedding button:focus-visible,#as-wedding a:focus-visible,#as-wedding input:focus-visible,#as-wedding select:focus-visible,#as-wedding textarea:focus-visible{outline:2px solid #bd9447;outline-offset:5px}\n#as-wedding button{color:inherit}\n#as-wedding .art-defs{position:absolute;width:0;height:0;overflow:hidden}\n#as-wedding .grain{position:fixed;inset:0;pointer-events:none;opacity:.04;z-index:30;background-image:url(\"data:image\/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http:\/\/www.w3.org\/2000\/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'\/%3E%3C\/filter%3E%3Crect width='100%25' height='100%25' opacity='.5' filter='url(%23n)'\/%3E%3C\/svg%3E\")}\n#as-wedding .eyebrow{font:10px var(--sans);letter-spacing:.24em;text-transform:uppercase}\n#as-wedding .divider{display:flex;align-items:center;justify-content:center;gap:16px;color:var(--gold);font-size:17px;margin:25px 0}\n#as-wedding .divider:before,#as-wedding .divider:after{content:'';width:55px;height:1px;background:var(--line)}\n#as-wedding .btn{display:inline-flex;align-items:center;justify-content:center;gap:13px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);padding:16px 24px;text-decoration:none;font:10px var(--sans);letter-spacing:.15em;text-transform:uppercase;border-radius:2px;transition:.25s}\n#as-wedding .btn:hover{background:#53664e;transform:translateY(-2px)}\n#as-wedding .btn.outline{background:transparent;color:var(--ink)}\n#as-wedding .text-btn{border:0;border-bottom:1px solid var(--line);background:none;padding:8px 0;font:11px var(--sans);letter-spacing:.05em}\n#as-wedding .script{font-family:var(--script);font-weight:400}\n#as-wedding .capital-a{font-family:\"Pinyon Script\",var(--script);font-style:normal;font-weight:400;font-size:1.02em}\n#as-wedding .monogram .capital-a,#as-wedding .brand .capital-a{font-size:1.2em}\n#as-wedding .hindi{font-family:'Noto Serif Devanagari',serif}\n#as-wedding .opening{position:fixed;inset:0;z-index:100000;overflow:hidden;display:grid;place-items:center;background:#e3d7bf}\n#as-wedding .gate{position:absolute;inset-block:0;width:50.1%;background-color:#67755d;background-image:radial-gradient(ellipse at 100% 30%,#a0a68855,transparent 70%),repeating-linear-gradient(90deg,#fff0 0px,#fff1 1px,#0000 3px,#0000 7px);transition:transform 2s cubic-bezier(.65,0,.25,1);box-shadow:inset 0 0 80px #253d2c45;z-index:4}\n#as-wedding .gate.left{left:0;border-right:3px solid #bba77b}\n#as-wedding .gate.right{right:0;border-left:3px solid #bba77b}\n#as-wedding .gate:before{content:'';position:absolute;inset:20px;border:1px solid #d0c29680}\n#as-wedding .gate:after{content:'';position:absolute;inset:27px;border:1px solid #d0c29640}\n#as-wedding .gate svg{position:absolute;width:90%;height:100%;opacity:.3;color:#e3dcbe;filter:drop-shadow(1px 2px 1px #263a29)}\n#as-wedding .gate.right svg{transform:scaleX(-1)}\n#as-wedding .seal{position:absolute;z-index:6;border:0;background:#eee4ce;width:172px;height:188px;clip-path:polygon(50% 0,60% 5%,72% 5%,80% 15%,91% 20%,92% 32%,100% 43%,95% 55%,98% 67%,87% 76%,83% 88%,70% 91%,60% 98%,48% 96%,35% 100%,26% 91%,13% 87%,10% 74%,1% 64%,5% 51%,0 40%,9% 28%,11% 17%,25% 12%,35% 3%);filter:drop-shadow(0 8px 15px #0006);transition:opacity .6s,transform .6s}\n#as-wedding .seal:after{content:'';position:absolute;inset:15px;border:1px solid #b69a61;border-radius:45%}\n#as-wedding .seal .monogram{font:44px var(--script);display:block;margin:12px 0 6px}\n#as-wedding .seal .eyebrow{font-size:8px;letter-spacing:.2em}\n#as-wedding .opening-note{position:absolute;z-index:6;bottom:12%;color:#f0e7d1;text-align:center;transition:opacity .5s}\n#as-wedding .opening-note p{font-style:italic;font-size:23px;margin:12px}\n#as-wedding .skip{position:absolute;z-index:6;bottom:28px;border:0;background:none;color:#eee2c6;font:10px var(--sans);letter-spacing:.12em;padding:12px}\n#as-wedding .open-label{position:absolute;z-index:6;top:11%;color:#f3ead4;text-align:center}\n#as-wedding .open-label .script{font-size:44px;margin-top:15px}\n#as-wedding .opening.go .left{transform:translateX(-100%)}\n#as-wedding .opening.go .right{transform:translateX(100%)}\n#as-wedding .opening.go .seal{opacity:0;transform:scale(1.12);pointer-events:none}\n#as-wedding .opening.go .opening-note,#as-wedding .opening.go .open-label,#as-wedding .opening.go .skip{opacity:0;pointer-events:none}\n#as-wedding .curtain{position:absolute;inset-block:0;width:51%;z-index:2;background:repeating-linear-gradient(90deg,#a9987d 0%,#e4d4ba 5%,#f7ead3 9%,#ccbaa0 13%,#a3937b 16%,#e6d7bf 20%);box-shadow:inset 0 0 50px #82705a55;transition:transform 2s cubic-bezier(.6,0,.25,1),border-radius 2s}\n#as-wedding .curtain.left{left:0;transform-origin:top left}\n#as-wedding .curtain.right{right:0;transform-origin:top right}\n#as-wedding .opening.curtains .curtain.left{transform:translateX(-100%) rotate(-8deg);border-radius:0 0 90% 0}\n#as-wedding .opening.curtains .curtain.right{transform:translateX(100%) rotate(8deg);border-radius:0 0 0 90%}\n#as-wedding .opening.curtains{background:transparent;pointer-events:none}\n#as-wedding .opening[hidden]{display:none}\n#as-wedding .blessing-reveal{position:absolute;text-align:center;z-index:1;font-size:28px}\n#as-wedding .opening.curtains .blessing-reveal{opacity:0;transition:opacity 1s}\n#as-wedding .site-header{height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid var(--line);background:#f7f3e9ef;position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}\n#as-wedding .brand{font:28px var(--script);text-decoration:none}\n#as-wedding .site-header nav{display:flex;gap:26px}\n#as-wedding .site-header nav a{font:10px var(--sans);text-transform:uppercase;letter-spacing:.13em;text-decoration:none}\n#as-wedding .site-header nav a:hover{color:var(--gold)}\n#as-wedding .sound{font:10px var(--sans);border:1px solid var(--line);padding:9px 12px;background:transparent;border-radius:50px}\n#as-wedding .hero{position:relative;min-height:850px;height:calc(100svh - 70px);max-height:1080px;display:grid;place-items:center;overflow:hidden;text-align:center;background:radial-gradient(ellipse at 50% 45%,#fffdf7 0,#eee5d14d 50%,#d6d5bb88 100%)}\n#as-wedding .hero:focus{outline:none}\n#as-wedding .hero .arch{position:absolute;inset:35px max(6%,calc((100% - 1100px)\/2));border:1px solid var(--line);border-radius:48% 48% 0 0}\n#as-wedding .hero .arch:before{content:'';position:absolute;inset:10px;border:1px solid #b6a47b44;border-radius:48% 48% 0 0}\n#as-wedding .hero-content{position:relative;z-index:2;padding:80px 20px 100px}\n#as-wedding .blessing{font-size:16px;color:var(--gold);margin-bottom:35px}\n#as-wedding .hero h1{font:clamp(76px,8vw,128px)\/.95 var(--script);font-weight:400;margin:28px 0 24px}\n#as-wedding .hero h1 span{display:block;font:italic 32px var(--serif);margin:12px 0 6px;color:var(--gold)}\n#as-wedding .hero .sub{font-size:24px;font-style:italic;margin:16px auto;max-width:320px}\n#as-wedding .hero .date{font:11px var(--sans);letter-spacing:.3em;margin-top:27px}\n#as-wedding .hero .location{font-size:17px;font-style:italic;margin-top:12px}\n#as-wedding .corner-flora{position:absolute;bottom:-30px;width:340px;height:620px;z-index:1;opacity:.85;pointer-events:none}\n#as-wedding .corner-flora.l{left:-80px}\n#as-wedding .corner-flora.r{right:-80px;transform:scaleX(-1)}\n#as-wedding .hero-top{position:absolute;top:-55px;left:-5%;width:110%;height:155px;opacity:.9}\n#as-wedding .scroll-cue{position:absolute;bottom:25px;left:50%;transform:translateX(-50%);font:9px var(--sans);letter-spacing:.2em;display:flex;gap:12px;align-items:center;white-space:nowrap}\n#as-wedding .scroll-cue span{font-size:22px}\n#as-wedding .section{padding:100px 24px;text-align:center}\n#as-wedding .section h2{font:400 clamp(38px,5vw,57px)\/1.1 var(--serif);margin:14px 0 24px}\n#as-wedding .section h2 em{font-weight:400}\n#as-wedding .section p{line-height:1.6}\n#as-wedding .intro{max-width:820px;margin:auto}\n#as-wedding .intro .lead{font-size:28px;line-height:1.5;max-width:650px;margin:24px auto}\n#as-wedding .family-grid{display:grid;grid-template-columns:1fr 50px 1fr;gap:25px;align-items:center;margin-top:50px}\n#as-wedding .family-grid h3{font:40px var(--script);margin:0 0 15px}\n#as-wedding .family-grid p{font-size:19px;margin:4px}\n#as-wedding .family-grid small{font:9px var(--sans);letter-spacing:.15em;display:block;margin-bottom:12px;text-transform:uppercase}\n#as-wedding .family-amp{font:italic 38px var(--serif);color:var(--gold)}\n#as-wedding .date-section{background:#e9ecdf;position:relative;overflow:hidden}\n#as-wedding .date-section:before,#as-wedding .date-section:after{content:'\u2767';position:absolute;font-size:260px;opacity:.06;top:120px;left:3%;transform:rotate(-40deg)}\n#as-wedding .date-section:after{left:auto;right:3%;transform:scaleX(-1) rotate(-40deg)}\n#as-wedding .date-section>p{max-width:370px;margin:0 auto 22px;font-size:19px}\n#as-wedding .scratch-wrap{position:relative;width:290px;height:270px;margin:20px auto 16px;filter:drop-shadow(0 12px 18px #2d432312)}\n#as-wedding .scratch-under{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;clip-path:path('M145 253 C120 228 12 164 12 88 C12 14 104 2 145 65 C186 2 278 14 278 88 C278 164 170 228 145 253 Z');background:#fcf9ee}\n#as-wedding .scratch-under .day{font:70px var(--serif);line-height:1}\n#as-wedding .scratch-under .month{font:11px var(--sans);letter-spacing:.2em;margin-top:4px}\n#as-wedding .scratch-under .year{font:24px var(--serif);margin:8px}\n#as-wedding .scratch-under .tiny{font:9px var(--sans);letter-spacing:.12em}\n#as-wedding .scratch-wrap canvas{position:absolute;inset:0;width:290px;height:270px;touch-action:none;cursor:crosshair;transition:opacity .8s}\n#as-wedding .scratch-wrap.revealed canvas{opacity:0;pointer-events:none}\n#as-wedding .date-section>.scratch-help{font:10px var(--sans);letter-spacing:.09em;min-height:16px}\n#as-wedding .reveal-btn{margin-bottom:24px}\n#as-wedding .countdown{display:flex;justify-content:center;gap:28px;margin-top:55px}\n#as-wedding .countdown div{min-width:66px}\n#as-wedding .countdown b{display:block;font:42px var(--serif);font-weight:400;font-variant-numeric:tabular-nums}\n#as-wedding .countdown small{font:8px var(--sans);letter-spacing:.17em;text-transform:uppercase}\n#as-wedding .count-caption{font-size:22px!important;font-style:italic;margin-top:30px!important;margin-bottom:-32px!important}\n#as-wedding .events{max-width:1120px;margin:auto}\n#as-wedding .events .intro-copy{font-size:22px;font-style:italic;margin-bottom:60px}\n#as-wedding .event{display:grid;grid-template-columns:140px 1fr 220px;gap:35px;align-items:center;text-align:left;padding:40px 0;border-top:1px solid var(--line)}\n#as-wedding .event-date{text-align:center;border-right:1px solid var(--line)}\n#as-wedding .event-date strong{display:block;font:58px var(--serif);font-weight:400;line-height:1}\n#as-wedding .event-date span{font:9px var(--sans);letter-spacing:.15em}\n#as-wedding .event h3{font:34px var(--serif);font-weight:400;margin:8px 0}\n#as-wedding .event .tag{font:9px var(--sans);letter-spacing:.2em;color:#8e7346;text-transform:uppercase}\n#as-wedding .event p{margin:8px 0;font-size:19px}\n#as-wedding .event .event-place{font-size:17px}\n#as-wedding .event .event-place b{font-weight:600;font-size:20px}\n#as-wedding .event-place a{font:9px var(--sans);letter-spacing:.1em;text-transform:uppercase;text-underline-offset:5px}\n#as-wedding .wedding-banner{position:relative;overflow:hidden;color:#f4eddb;background:#415344;padding:100px 24px;text-align:center}\n#as-wedding .wedding-banner .eyebrow{color:#d3bd86}\n#as-wedding .wedding-banner h2{font:clamp(56px,6vw,90px) var(--script);font-weight:400;margin:20px 0}\n#as-wedding .wedding-banner p{font:italic 25px var(--serif)}\n#as-wedding .wedding-banner .banner-botanical{position:absolute;width:300px;height:500px;opacity:.19;bottom:-100px;left:-50px;color:#efead8}\n#as-wedding .wedding-banner .banner-botanical.right{left:auto;right:-50px;transform:scaleX(-1)}\n#as-wedding .wedding-banner .banner-content{position:relative}\n#as-wedding .venue{display:grid;grid-template-columns:1fr 1fr;max-width:1120px;margin:auto;gap:80px;text-align:left;align-items:center}\n#as-wedding .venue .map-frame{border:1px solid var(--line);padding:10px;position:relative}\n#as-wedding .venue iframe{display:block;width:100%;height:380px;border:0;background:#e5e7da}\n#as-wedding .venue h2{font-size:46px}\n#as-wedding .venue address{font-style:normal;font-size:22px;line-height:1.6;margin-bottom:25px}\n#as-wedding .venue .eyebrow{margin-bottom:20px}\n#as-wedding .venue p{font-size:18px}\n#as-wedding .welcome-notes{background:#eee9dc;padding:55px 24px;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;text-align:center}\n#as-wedding .welcome-notes>div{max-width:280px;margin:auto}\n#as-wedding .welcome-notes .icon{font-size:30px;color:var(--gold)}\n#as-wedding .welcome-notes h3{font:27px var(--serif);margin:14px 0}\n#as-wedding .welcome-notes p{font-size:18px;line-height:1.55;margin:0}\n#as-wedding .rsvp{max-width:1050px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;text-align:left}\n#as-wedding .rsvp .host{margin-top:35px}\n#as-wedding .rsvp .host strong{font-weight:500;display:block;font-size:24px}\n#as-wedding .rsvp .host span{font-size:18px}\n#as-wedding .rsvp .phone{display:block;margin-top:12px;font:14px var(--sans);text-decoration:none}\n#as-wedding .rsvp form{padding:30px;border:1px solid var(--line);background:#fffdf54d}\n#as-wedding .field{margin-bottom:20px}\n#as-wedding .field label{display:block;font:10px var(--sans);letter-spacing:.08em;margin-bottom:10px}\n#as-wedding .field input,#as-wedding .field select,#as-wedding .field textarea{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:10px 0;color:var(--ink);font:18px var(--serif);border-radius:0}\n#as-wedding .field textarea{resize:vertical;min-height:65px}\n#as-wedding .rsvp form .btn{width:100%}\n#as-wedding .form-note{font:11px\/1.6 var(--sans)!important;color:#67715f}\n#as-wedding .rsvp-feedback{font-size:16px;min-height:20px;margin-bottom:0}\n#as-wedding .footer{position:relative;overflow:hidden;background:#e5e8da;text-align:center;padding:70px 20px 35px}\n#as-wedding .footer .script{font-size:64px;margin:18px 0}\n#as-wedding .footer .hindi{color:var(--gold);font-size:19px}\n#as-wedding .footer p{font-size:22px;font-style:italic}\n#as-wedding .footer .eyebrow{font-size:9px;margin-top:35px}\n#as-wedding .footer .text-btn{font-size:9px;margin-top:25px}\n#as-wedding .petal{position:fixed;z-index:40;pointer-events:none;top:-20px;width:8px;height:13px;background:#ad9257;border-radius:70% 0 70% 0;animation:asw-fall 4s linear forwards}\n@keyframes asw-fall{to{transform:translate(var(--drift),105vh) rotate(600deg);opacity:0}}\n#as-wedding .mobile-bottom{display:none}\n#as-wedding.asw-ready .fade{opacity:0;transform:translateY(20px);transition:opacity .8s,transform .8s}\n#as-wedding.asw-ready .fade.visible{opacity:1;transform:none}\n#as-wedding .noscript{padding:24px;text-align:center}\n#as-wedding .skip-content{position:fixed;left:15px;top:-80px;z-index:200;background:var(--paper);padding:12px}\n#as-wedding .skip-content:focus{top:10px}\n@media(min-width:1600px){\n#as-wedding .corner-flora{width:420px;left:0}\n#as-wedding .corner-flora.r{right:0}\n}\n@media(max-width:760px){\n#as-wedding .site-header{height:58px;padding:0 20px}\n#as-wedding .site-header nav{gap:18px}\n#as-wedding .site-header nav a{font-size:8px}\n#as-wedding .site-header nav a:first-child{display:none}\n#as-wedding .brand{font-size:25px}\n#as-wedding .sound{font-size:9px;padding:8px}\n#as-wedding .hero{min-height:730px;height:calc(100svh - 58px);max-height:930px}\n#as-wedding .hero-content{padding:85px 15px}\n#as-wedding .hero .arch{inset:26px 18px;border-radius:48% 48% 0 0}\n#as-wedding .hero h1{font-size:84px}\n#as-wedding .hero .eyebrow{font-size:9px}\n#as-wedding .hero .sub{font-size:22px}\n#as-wedding .blessing{margin-bottom:27px;font-size:14px}\n#as-wedding .hero .date{font-size:10px;letter-spacing:.23em}\n#as-wedding .hero .location{font-size:16px}\n#as-wedding .corner-flora{height:440px;width:240px;left:-105px!important;bottom:-20px;opacity:.65}\n#as-wedding .corner-flora.r{right:-105px;left:auto!important}\n#as-wedding .hero-top{height:110px;top:-35px}\n#as-wedding .section{padding:72px 24px}\n#as-wedding .section h2{font-size:39px}\n#as-wedding .intro .lead{font-size:24px}\n#as-wedding .family-grid{grid-template-columns:1fr;gap:20px;margin-top:35px}\n#as-wedding .family-amp{font-size:30px}\n#as-wedding .family-grid h3{font-size:37px}\n#as-wedding .family-grid p{font-size:18px}\n#as-wedding .countdown{gap:17px;margin-top:45px}\n#as-wedding .countdown div{min-width:55px}\n#as-wedding .countdown b{font-size:36px}\n#as-wedding .event{grid-template-columns:60px 1fr;gap:20px;padding:30px 0;align-items:start}\n#as-wedding .event-date strong{font-size:40px}\n#as-wedding .event-date span{font-size:8px;letter-spacing:.08em}\n#as-wedding .event-date{padding-right:14px}\n#as-wedding .event h3{font-size:28px}\n#as-wedding .event p{font-size:18px}\n#as-wedding .event-place{grid-column:2}\n#as-wedding .event .event-place{margin-top:-13px}\n#as-wedding .events .intro-copy{margin-bottom:35px;font-size:20px}\n#as-wedding .wedding-banner{padding:80px 20px}\n#as-wedding .wedding-banner h2{font-size:60px}\n#as-wedding .wedding-banner p{font-size:22px}\n#as-wedding .wedding-banner .banner-botanical{width:200px;opacity:.12}\n#as-wedding .venue{grid-template-columns:1fr;gap:30px}\n#as-wedding .venue h2{font-size:39px}\n#as-wedding .venue address{font-size:20px}\n#as-wedding .venue iframe{height:270px}\n#as-wedding .welcome-notes{grid-template-columns:1fr;gap:40px;padding:50px 24px}\n#as-wedding .welcome-notes>div{max-width:300px}\n#as-wedding .rsvp{grid-template-columns:1fr;gap:35px}\n#as-wedding .rsvp form{padding:25px 20px}\n#as-wedding .footer{padding-bottom:100px}\n#as-wedding .footer .script{font-size:52px}\n#as-wedding .mobile-bottom{position:fixed;bottom:0;left:0;right:0;z-index:25;display:flex;justify-content:space-around;align-items:center;background:#f7f3e9f5;backdrop-filter:blur(10px);border-top:1px solid var(--line);padding:14px 15px max(14px,env(safe-area-inset-bottom))}\n#as-wedding .mobile-bottom a{font:9px var(--sans);letter-spacing:.1em;text-decoration:none}\n#as-wedding .mobile-bottom a:last-child{color:#fff7e7;background:var(--ink);padding:10px 18px;border-radius:2px}\n#as-wedding .open-label .script{font-size:38px}\n#as-wedding .seal{width:156px;height:174px}\n#as-wedding .opening-note{bottom:16%}\n#as-wedding .opening-note p{font-size:21px}\n}\n@media(prefers-reduced-motion:reduce){\n#as-wedding *,#as-wedding *:before,#as-wedding *:after{animation-duration:.01ms!important;transition-duration:.01ms!important}\n#as-wedding.asw-ready .fade{opacity:1;transform:none}\n}\n#as-wedding .opening[hidden]{display:none!important}\n#as-wedding .btn{font-weight:400;text-transform:uppercase}\n#as-wedding .seal{padding:2px 6px}\n#as-wedding .sound{border-radius:50px}\n#as-wedding .skip-content{z-index:100001}\n\n\n\/* Responsive layout: scoped overrides, no theme-wide typography changes. *\/\n.asw-invitation-host{overflow:visible!important;min-width:0!important}\n#as-wedding{--asw-admin-offset:0px;--asw-header-height:72px;width:var(--asw-page-width,100%);max-width:none!important;margin-left:var(--asw-page-shift,0px)!important;margin-right:0!important;font-size:clamp(18px,1.4vw,20px);overflow:clip}\n#as-wedding #asw-site{overflow:visible}\n#as-wedding [id]{scroll-margin-top:calc(var(--asw-admin-offset) + var(--asw-header-height) + 20px)}\n#as-wedding p{line-height:1.55}\n#as-wedding .eyebrow{font-size:11px;line-height:1.6}\n#as-wedding .section{padding:clamp(56px,6vw,88px) clamp(22px,4vw,64px)}\n#as-wedding .section h2{font-size:clamp(34px,3.6vw,52px);line-height:1.12;text-wrap:balance}\n#as-wedding .site-header{height:var(--asw-header-height);top:var(--asw-admin-offset);padding-inline:max(28px,calc((100% - 1200px)\/2));gap:20px;position:sticky}\n#as-wedding .site-header nav{gap:clamp(18px,3vw,36px)}\n#as-wedding .site-header nav a{font-size:11px;line-height:1.4;padding-block:16px;white-space:nowrap}\n#as-wedding .brand{font-size:32px;white-space:nowrap;line-height:1.2;flex-shrink:0}\n#as-wedding .sound{min-height:40px;font-size:11px;white-space:nowrap;flex-shrink:0;padding:10px 15px}\n#as-wedding .opening{top:var(--asw-admin-offset)}\n#as-wedding .hero{min-height:660px;height:calc(100svh - var(--asw-header-height) - var(--asw-admin-offset));max-height:900px}\n#as-wedding .hero-content{padding:65px 24px 78px;max-width:900px}\n#as-wedding .hero h1{font-size:clamp(84px,8vw,116px);line-height:.98;margin:24px 0 18px}\n#as-wedding .hero h1 span{font-size:30px;margin:12px 0 6px}\n#as-wedding .hero .blessing{margin-bottom:26px}\n#as-wedding .hero .sub{font-size:25px;line-height:1.4;margin-block:18px}\n#as-wedding .hero .divider{margin:22px 0}\n#as-wedding .hero .date{margin:23px 0 0;font-size:12px;line-height:1.4}\n#as-wedding .hero .location{margin-top:10px;font-size:19px}\n#as-wedding .hero .arch{inset:28px max(28px,calc((100% - 1160px)\/2));border-radius:48% 48% 0 0}\n#as-wedding .corner-flora{width:clamp(260px,24vw,370px);height:560px;bottom:-35px}\n#as-wedding .corner-flora.l{left:max(-70px,calc((100% - 1420px)\/2))}\n#as-wedding .corner-flora.r{right:max(-70px,calc((100% - 1420px)\/2))}\n#as-wedding .intro{max-width:1000px}\n#as-wedding .intro .lead{max-width:700px;font-size:clamp(22px,2.2vw,28px);line-height:1.5}\n#as-wedding .family-grid{margin-top:36px;gap:24px}\n#as-wedding .family-grid h3{font-size:42px;line-height:1.25}\n#as-wedding .family-grid small{font-size:10px}\n#as-wedding .family-grid p{font-size:20px}\n#as-wedding .date-section{padding-inline:max(24px,calc((100% - 1060px)\/2))}\n#as-wedding .date-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center;position:relative;z-index:1}\n#as-wedding .date-intro{text-align:left}\n#as-wedding .date-intro h2{font-size:clamp(38px,4vw,56px)}\n#as-wedding .date-intro p{font-size:22px;max-width:380px;margin:0}\n#as-wedding .date-interaction{text-align:center}\n#as-wedding .scratch-wrap{margin:0 auto 12px}\n#as-wedding .scratch-help{font:10px\/1.6 var(--sans);letter-spacing:.09em;margin:12px auto;max-width:100%}\n#as-wedding .reveal-btn{margin:0 0 18px;min-height:38px}\n#as-wedding .countdown-panel{border-top:1px solid var(--line);margin-top:35px;padding-top:24px;position:relative;z-index:1}\n#as-wedding .count-caption{font-size:23px!important;line-height:1.3;margin:0 0 16px!important}\n#as-wedding .countdown{margin:0;gap:40px}\n#as-wedding .countdown b{font-size:42px;line-height:1.1}\n#as-wedding .countdown small{font-size:10px;line-height:2.3}\n#as-wedding .date-section:before,#as-wedding .date-section:after{font-size:180px;top:100px;opacity:.035}\n#as-wedding .events{max-width:1220px}\n#as-wedding .events .intro-copy{margin-bottom:42px}\n#as-wedding .event{grid-template-columns:100px minmax(0,1fr) minmax(200px,.6fr);gap:30px;padding:32px 0}\n#as-wedding .event h3{font-size:32px;line-height:1.15}\n#as-wedding .event-date strong{font-size:54px}\n#as-wedding .event-date span,#as-wedding .event .tag{font-size:10px}\n#as-wedding .event .event-place{font-size:18px}\n#as-wedding .event-place a{font-size:10px;line-height:1.5;display:inline-block;padding-block:10px}\n#as-wedding .wedding-banner{padding:70px 24px}\n#as-wedding .wedding-banner h2{font-size:clamp(46px,6vw,78px);line-height:1.2;text-wrap:balance;max-width:1100px;margin:22px auto}\n#as-wedding .wedding-banner p{font-size:24px}\n#as-wedding .venue,#as-wedding .rsvp{max-width:1220px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(35px,5vw,70px);align-items:center}\n#as-wedding .venue h2,#as-wedding .rsvp h2{font-size:clamp(38px,3.5vw,50px)}\n#as-wedding .venue iframe{height:350px}\n#as-wedding .venue address{font-size:21px;line-height:1.5}\n#as-wedding .welcome-notes{padding:45px max(24px,calc((100% - 1140px)\/2));gap:36px}\n#as-wedding .welcome-notes h3{font-size:26px;line-height:1.2}\n#as-wedding .welcome-notes p{font-size:19px;line-height:1.5}\n#as-wedding .rsvp .host>.eyebrow{font:10px\/1.6 var(--sans);letter-spacing:.15em;display:block;margin-bottom:8px}\n#as-wedding .rsvp form{padding:32px;min-width:0}\n#as-wedding .field{margin-bottom:19px}\n#as-wedding .field label{font-size:11px;line-height:1.5}\n#as-wedding .field input,#as-wedding .field select,#as-wedding .field textarea{font-size:19px;min-height:44px;line-height:1.4}\n#as-wedding .field textarea{min-height:70px}\n#as-wedding .form-note{font:12px\/1.6 var(--sans)!important;margin:15px 0 0}\n#as-wedding .rsvp-feedback:empty{display:none}\n#as-wedding .btn{font-size:11px;line-height:1.45;min-height:48px;max-width:100%;padding:15px 23px;white-space:normal;text-align:center}\n#as-wedding .footer{padding:50px max(24px,calc((100% - 1140px)\/2)) 26px}\n#as-wedding .footer-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:50px;align-items:center}\n#as-wedding .footer-signature{text-align:left}\n#as-wedding .footer-names{display:flex;align-items:baseline;flex-wrap:wrap;gap:12px;font-size:62px;line-height:1.3;margin:10px 0 0}\n#as-wedding .footer-names>span{white-space:nowrap}\n#as-wedding .footer .footer-amp{font-size:.65em;color:var(--gold)}\n#as-wedding .footer .hindi{font-size:17px;line-height:1.6}\n#as-wedding .footer-message p{margin:0;font-size:24px}\n#as-wedding .footer-message .divider{margin:17px 0}\n#as-wedding .footer-message .eyebrow{margin:0;font-size:10px;line-height:1.8}\n#as-wedding .footer .text-btn{margin-top:24px;font-size:10px;min-height:40px}\n#as-wedding .open-label{top:12%}\n#as-wedding .opening-note{bottom:13%;padding-inline:20px}\n#as-wedding .opening-note p{font-size:24px;line-height:1.4}\n#as-wedding .skip{min-height:44px;bottom:20px}\n@media(min-width:1600px){\n #as-wedding .section{padding-block:88px}\n #as-wedding .hero h1{font-size:122px}\n #as-wedding .hero-content{padding-block:60px 85px}\n #as-wedding .hero{max-height:940px}\n}\n@media(min-width:761px) and (max-width:1023px){\n #as-wedding{--asw-header-height:66px}\n #as-wedding .site-header{padding-inline:28px}\n #as-wedding .hero{min-height:670px;max-height:880px}\n #as-wedding .hero h1{font-size:98px}\n #as-wedding .date-layout{gap:28px}\n #as-wedding .date-intro h2{font-size:40px}\n #as-wedding .date-intro p{font-size:20px}\n #as-wedding .event{grid-template-columns:75px minmax(0,1fr);gap:24px}\n #as-wedding .event-place{grid-column:2;margin-top:-15px}\n #as-wedding .venue,#as-wedding .rsvp{gap:30px}\n #as-wedding .venue h2,#as-wedding .rsvp h2{font-size:37px}\n #as-wedding .rsvp form{padding:24px}\n #as-wedding .welcome-notes{gap:24px}\n #as-wedding .welcome-notes p{font-size:18px}\n #as-wedding .footer-main{gap:28px}\n #as-wedding .footer-names{font-size:48px;gap:8px}\n}\n@media(max-width:760px){\n #as-wedding{--asw-header-height:62px;font-size:18px}\n #as-wedding .section{padding:54px 22px}\n #as-wedding .section h2{font-size:37px}\n #as-wedding .site-header{padding-inline:18px;gap:12px}\n #as-wedding .brand{font-size:27px}\n #as-wedding .site-header nav{gap:16px}\n #as-wedding .site-header nav a{font-size:9px;letter-spacing:.08em}\n #as-wedding .sound{font-size:10px;min-height:38px;padding:8px 10px}\n #as-wedding .hero{min-height:640px;height:calc(100svh - var(--asw-header-height) - var(--asw-admin-offset));max-height:820px}\n #as-wedding .hero-content{padding:65px 15px 90px}\n #as-wedding .hero h1{font-size:clamp(72px,20vw,90px);margin:20px 0 16px;line-height:.97}\n #as-wedding .hero h1 span{font-size:25px;margin:10px 0 6px}\n #as-wedding .hero .eyebrow{font-size:9px}\n #as-wedding .hero .blessing{font-size:14px;margin-bottom:23px}\n #as-wedding .hero .sub{font-size:22px;margin-block:15px}\n #as-wedding .hero .divider{margin:18px 0}\n #as-wedding .hero .date{font-size:10px;margin-top:20px;letter-spacing:.2em}\n #as-wedding .hero .location{font-size:17px;margin-top:9px}\n #as-wedding .hero .arch{inset:20px 16px}\n #as-wedding .corner-flora{height:390px;width:210px;bottom:-25px;opacity:.6}\n #as-wedding .corner-flora.l{left:-90px!important}\n #as-wedding .corner-flora.r{right:-90px!important}\n #as-wedding .scroll-cue{bottom:25px;font-size:8px;letter-spacing:.12em}\n #as-wedding .family-grid{gap:18px;margin-top:30px}\n #as-wedding .family-grid h3{font-size:37px}\n #as-wedding .family-grid p{font-size:19px}\n #as-wedding .intro .lead{font-size:23px}\n #as-wedding .date-layout{grid-template-columns:1fr;gap:25px}\n #as-wedding .date-intro{text-align:center}\n #as-wedding .date-intro h2{font-size:38px}\n #as-wedding .date-intro p{font-size:20px;margin-inline:auto}\n #as-wedding .date-section:before,#as-wedding .date-section:after{display:none}\n #as-wedding .countdown-panel{margin-top:28px;padding-top:24px}\n #as-wedding .countdown{gap:20px}\n #as-wedding .countdown div{min-width:48px}\n #as-wedding .countdown b{font-size:36px}\n #as-wedding .countdown small{font-size:9px}\n #as-wedding .events .intro-copy{font-size:20px;margin-bottom:28px}\n #as-wedding .event{grid-template-columns:55px minmax(0,1fr);gap:18px;padding:26px 0}\n #as-wedding .event h3{font-size:28px}\n #as-wedding .event .tag{font-size:9px;line-height:1.6;display:block}\n #as-wedding .event-date strong{font-size:40px}\n #as-wedding .event-date span{font-size:8px}\n #as-wedding .event .event-place{grid-column:2;margin-top:-13px}\n #as-wedding .event p{font-size:18px;line-height:1.5}\n #as-wedding .wedding-banner{padding:58px 25px}\n #as-wedding .wedding-banner h2{font-size:clamp(44px,11vw,60px);line-height:1.25}\n #as-wedding .wedding-banner p{font-size:22px}\n #as-wedding .venue,#as-wedding .rsvp{grid-template-columns:1fr;gap:30px}\n #as-wedding .venue h2,#as-wedding .rsvp h2{font-size:38px}\n #as-wedding .venue iframe{height:280px}\n #as-wedding .venue address{font-size:20px}\n #as-wedding .welcome-notes{padding:42px 24px;gap:32px}\n #as-wedding .welcome-notes>div{max-width:340px}\n #as-wedding .rsvp form{padding:24px 20px}\n #as-wedding .rsvp .host{margin-top:24px}\n #as-wedding .field input,#as-wedding .field select,#as-wedding .field textarea{font-size:18px}\n #as-wedding .footer{padding:40px 24px calc(88px + env(safe-area-inset-bottom))}\n #as-wedding .footer-main{grid-template-columns:1fr;gap:22px}\n #as-wedding .footer-signature{text-align:center}\n #as-wedding .footer-names{justify-content:center;font-size:48px;gap:10px}\n #as-wedding .footer-message p{font-size:22px}\n #as-wedding .footer-message .divider{margin:14px 0}\n #as-wedding .footer .text-btn{margin-top:18px}\n #as-wedding .mobile-bottom{min-height:62px;padding:9px 15px calc(9px + env(safe-area-inset-bottom));gap:10px}\n #as-wedding .mobile-bottom a{min-height:44px;display:inline-flex;align-items:center;justify-content:center;font-size:10px;letter-spacing:.08em}\n #as-wedding .mobile-bottom a:last-child{padding:10px 20px}\n #as-wedding .open-label{top:12%;padding:0 15px}\n #as-wedding .open-label .script{font-size:clamp(30px,9vw,38px)}\n #as-wedding .opening-note{bottom:15%;width:100%}\n #as-wedding .opening-note p{font-size:20px;max-width:290px;margin:8px auto 12px}\n #as-wedding .opening-note .eyebrow{font-size:9px}\n}\n@media(max-width:380px){\n #as-wedding .site-header{padding-inline:12px;gap:10px}\n #as-wedding .site-header nav{gap:10px}\n #as-wedding .site-header nav a{font-size:8px}\n #as-wedding .brand{font-size:25px}\n #as-wedding .sound{font-size:9px;padding:8px}\n #as-wedding .section{padding-inline:18px}\n #as-wedding .scratch-wrap,#as-wedding .scratch-wrap canvas{width:270px;height:251.38px}\n #as-wedding .scratch-under{width:290px;height:270px;inset:0 auto auto 0;transform:scale(.931034);transform-origin:top left}\n #as-wedding .footer-names{font-size:41px;gap:7px}\n #as-wedding .mobile-bottom a{font-size:9px}\n #as-wedding .event{gap:14px;grid-template-columns:48px minmax(0,1fr)}\n}\n@media(max-height:600px) and (min-width:761px){\n #as-wedding .hero{min-height:600px;height:auto}\n #as-wedding .hero-content{padding:50px 24px 68px}\n #as-wedding .hero h1{font-size:84px}\n #as-wedding .open-label{top:6%}\n #as-wedding .open-label .script{font-size:30px;margin-top:5px}\n #as-wedding .seal{width:136px;height:150px}\n #as-wedding .seal .monogram{font-size:35px}\n #as-wedding .opening-note{bottom:13%}\n #as-wedding .opening-note p{font-size:17px;margin:5px}\n #as-wedding .opening-note .eyebrow{font-size:8px}\n #as-wedding .skip{bottom:0;font-size:9px}\n}\n@media(max-height:520px) and (max-width:760px){\n #as-wedding .open-label{top:5%}\n #as-wedding .open-label .script{font-size:27px;margin-top:6px}\n #as-wedding .seal{width:125px;height:140px}\n #as-wedding .seal .monogram{font-size:32px}\n #as-wedding .opening-note{bottom:13%}\n #as-wedding .opening-note p{font-size:16px;margin:4px auto}\n #as-wedding .skip{bottom:0;font-size:9px}\n}\n\n\n#as-wedding{scroll-margin-top:var(--asw-admin-offset)}\n\/* Hero content defines its height: never crop names or overlap the scroll link. *\/\n#as-wedding .site-header{width:100%;max-width:none;margin:0;flex-shrink:0}\n#as-wedding .hero{display:flex;flex-direction:column;justify-content:center;align-items:center;height:auto;max-height:none;min-height:calc(100svh - var(--asw-header-height) - var(--asw-admin-offset));padding:58px 24px 30px;gap:28px;isolation:isolate}\n#as-wedding .hero-content{flex:0 0 auto;width:100%;max-width:760px;padding:0;margin:0}\n#as-wedding .hero .blessing{margin:0 0 20px;font-size:15px;line-height:1.6}\n#as-wedding .hero .eyebrow{margin:0;line-height:1.8}\n#as-wedding .hero h1{font-size:clamp(78px,7.2vw,104px);line-height:1.12;margin:18px 0 12px;overflow:visible}\n#as-wedding .hero h1 span{font-size:26px;line-height:1;margin:4px 0}\n#as-wedding .hero .sub{font-size:24px;line-height:1.4;margin:14px auto}\n#as-wedding .hero .divider{margin:18px 0}\n#as-wedding .hero .date{margin:20px 0 0;font-size:11px;line-height:1.6}\n#as-wedding .hero .location{margin:8px 0 0;font-size:19px;line-height:1.5}\n#as-wedding .hero .scroll-cue{position:relative;inset:auto;transform:none;flex:0 0 auto;justify-content:center;margin:0;padding:8px 0;min-height:40px;font-size:9px;line-height:1.5;z-index:2;white-space:normal;text-align:center}\n#as-wedding .hero .arch{inset:24px max(20px,calc((100% - 1160px)\/2));pointer-events:none}\n#as-wedding .hero .corner-flora{width:clamp(210px,25vw,360px);height:auto;aspect-ratio:540 \/ 570;bottom:10px;opacity:.75;overflow:visible}\n#as-wedding .hero .corner-flora.l{left:max(-55px,calc((100% - 1480px)\/2))!important}\n#as-wedding .hero .corner-flora.r{right:max(-55px,calc((100% - 1480px)\/2))!important}\n#as-wedding .hero .hero-top{opacity:.55;pointer-events:none}\n@media(max-width:760px){\n #as-wedding .hero{padding:55px 22px 25px;gap:26px}\n #as-wedding .hero h1{font-size:clamp(70px,19vw,86px);margin-top:18px}\n #as-wedding .hero h1 span{font-size:23px}\n #as-wedding .hero .eyebrow{font-size:9px}\n #as-wedding .hero .blessing{font-size:14px}\n #as-wedding .hero .sub{font-size:22px}\n #as-wedding .hero .date{font-size:10px;letter-spacing:.18em}\n #as-wedding .hero .location{font-size:18px}\n #as-wedding .hero .corner-flora{width:200px;opacity:.4;bottom:15px}\n #as-wedding .hero .corner-flora.l{left:-85px!important}\n #as-wedding .hero .corner-flora.r{right:-85px!important}\n #as-wedding .hero .scroll-cue{font-size:8px;letter-spacing:.12em}\n}\n@media(max-height:600px) and (min-width:761px){\n #as-wedding .hero{padding-top:42px;gap:20px}\n #as-wedding .hero h1{font-size:80px}\n}\n\n<\/style>\n<div id=\"as-wedding\">\n\n<a class=\"skip-content\" href=\"#asw-invitation\" id=\"asw-skip-access\">Skip opening and read invitation<\/a>\n<svg class=\"art-defs\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><defs>\n<g id=\"asw-leaf\"><path d=\"M0 0Q-35-22-19-59Q14-49 0 0\" fill=\"currentColor\"\/><path d=\"M0 0L-19-54\" stroke=\"#e3ddbf\" stroke-width=\".7\" fill=\"none\"\/><\/g>\n<g id=\"asw-branch\" fill=\"none\" stroke=\"currentColor\"><path d=\"M100 470Q175 250 90 30\" stroke-width=\"2\"\/><g fill=\"currentColor\" stroke=\"none\"><use href=\"#asw-leaf\" transform=\"translate(113 430) rotate(-53)\"\/><use href=\"#asw-leaf\" transform=\"translate(123 400) rotate(70)\"\/><use href=\"#asw-leaf\" transform=\"translate(132 360) rotate(-40)\"\/><use href=\"#asw-leaf\" transform=\"translate(138 325) rotate(65)\"\/><use href=\"#asw-leaf\" transform=\"translate(140 285) rotate(-38)\"\/><use href=\"#asw-leaf\" transform=\"translate(136 248) rotate(55)\"\/><use href=\"#asw-leaf\" transform=\"translate(132 210) rotate(-45)\"\/><use href=\"#asw-leaf\" transform=\"translate(123 170) rotate(45)\"\/><use href=\"#asw-leaf\" transform=\"translate(111 125) rotate(-30)\"\/><use href=\"#asw-leaf\" transform=\"translate(100 83) rotate(10)\"\/><\/g><\/g>\n<g id=\"asw-flower\"><g fill=\"#efe1c5\" stroke=\"#bd9d6b\" stroke-width=\".7\"><ellipse cy=\"-13\" rx=\"9\" ry=\"16\"\/><ellipse cy=\"-13\" rx=\"9\" ry=\"16\" transform=\"rotate(60)\"\/><ellipse cy=\"-13\" rx=\"9\" ry=\"16\" transform=\"rotate(120)\"\/><ellipse cy=\"-13\" rx=\"9\" ry=\"16\" transform=\"rotate(180)\"\/><ellipse cy=\"-13\" rx=\"9\" ry=\"16\" transform=\"rotate(240)\"\/><ellipse cy=\"-13\" rx=\"9\" ry=\"16\" transform=\"rotate(300)\"\/><\/g><circle r=\"7\" fill=\"#ad8d51\"\/><circle r=\"3\" fill=\"#dec891\"\/><\/g>\n<g id=\"asw-botanical\"><g color=\"#677b5d\"><use href=\"#asw-branch\" transform=\"translate(5 20)\"\/><\/g><g color=\"#889473\"><use href=\"#asw-branch\" transform=\"translate(-20 110) rotate(-25 100 470) scale(.8)\"\/><\/g><g color=\"#445d47\"><use href=\"#asw-branch\" transform=\"translate(60 120) rotate(30 100 470) scale(.75)\"\/><\/g><g color=\"#a29164\"><use href=\"#asw-branch\" transform=\"translate(20 180) rotate(-45 100 470) scale(.7)\"\/><\/g><use href=\"#asw-flower\" transform=\"translate(140 380) scale(1.2)\"\/><use href=\"#asw-flower\" transform=\"translate(80 440) scale(1.3)\"\/><use href=\"#asw-flower\" transform=\"translate(175 460) scale(.9)\"\/><use href=\"#asw-flower\" transform=\"translate(118 480) scale(.8)\"\/><use href=\"#asw-flower\" transform=\"translate(107 290) scale(.7)\"\/><\/g>\n<symbol id=\"asw-door-vine\" viewBox=\"0 0 300 800\"><use href=\"#asw-branch\" transform=\"translate(-10 10) scale(1.2)\"\/><use href=\"#asw-branch\" transform=\"translate(270 780) rotate(180) scale(1.2)\"\/><use href=\"#asw-flower\" transform=\"translate(150 370)\"\/><\/symbol>\n<symbol id=\"asw-swag\" viewBox=\"0 0 1200 180\"><g fill=\"none\" stroke=\"#b09b71\" stroke-width=\"1\"><path d=\"M0 20Q150 180 300 20Q450 180 600 20Q750 180 900 20Q1050 180 1200 20\"\/><path d=\"M0 30Q150 190 300 30Q450 190 600 30Q750 190 900 30Q1050 190 1200 30\"\/><path d=\"M0 40Q150 200 300 40Q450 200 600 40Q750 200 900 40Q1050 200 1200 40\"\/><\/g><g><use href=\"#asw-flower\" transform=\"translate(300 35) scale(.7)\"\/><use href=\"#asw-flower\" transform=\"translate(600 35) scale(.7)\"\/><use href=\"#asw-flower\" transform=\"translate(900 35) scale(.7)\"\/><\/g><\/symbol>\n<\/defs><\/svg>\n<div class=\"grain\"><\/div>\n<div class=\"opening\" id=\"asw-opening\" hidden role=\"dialog\" aria-modal=\"true\" aria-label=\"Open Aniket and Sunidhi's wedding invitation\">\n <div class=\"blessing-reveal\"><div class=\"hindi\">\u0936\u094d\u0930\u0940 \u0917\u0923\u0947\u0936\u093e\u092f \u0928\u092e\u0903<\/div><p>Every beautiful beginning<br>starts with a blessing.<\/p><\/div>\n <div class=\"curtain left\"><\/div><div class=\"curtain right\"><\/div>\n <div class=\"gate left\"><svg><use href=\"#asw-door-vine\"\/><\/svg><\/div><div class=\"gate right\"><svg><use href=\"#asw-door-vine\"\/><\/svg><\/div>\n <div class=\"open-label\"><div class=\"eyebrow\">An invitation, with love<\/div><div class=\"script\">A beautiful beginning<\/div><\/div>\n <button class=\"seal\" id=\"asw-open-invite\" aria-label=\"Open the wedding invitation\"><span class=\"monogram\"><i class=\"capital-a\">A<\/i> & S<\/span><span class=\"eyebrow\">7 \u00b7 12 \u00b7 2026<\/span><\/button>\n <div class=\"opening-note\"><p>Some stories are meant to be celebrated.<\/p><span class=\"eyebrow\">Touch the seal to open<\/span><\/div>\n <button class=\"skip\" id=\"asw-skip-intro\">SKIP ANIMATION \u2197<\/button>\n<\/div>\n<div id=\"asw-site\">\n<header class=\"site-header\"><a href=\"#asw-invitation\" class=\"brand\" aria-label=\"Aniket and Sunidhi\"><i class=\"capital-a\">A<\/i> & S<\/a><nav aria-label=\"Main navigation\"><a href=\"#asw-our-families\">Our families<\/a><a href=\"#asw-celebrations\">Celebrations<\/a><a href=\"#asw-venue\">Venue<\/a><\/nav><button class=\"sound\" id=\"asw-sound\" aria-pressed=\"false\">\u266b Sound off<\/button><\/header>\n<main>\n<section class=\"hero\" id=\"asw-invitation\" tabindex=\"-1\">\n <div class=\"arch\"><\/div><svg class=\"hero-top\" aria-hidden=\"true\"><use href=\"#asw-swag\"\/><\/svg><svg class=\"corner-flora l\" viewBox=\"-100 0 540 570\" aria-hidden=\"true\"><use href=\"#asw-botanical\"\/><\/svg><svg class=\"corner-flora r\" viewBox=\"-100 0 540 570\" aria-hidden=\"true\"><use href=\"#asw-botanical\"\/><\/svg>\n <div class=\"hero-content\"><div class=\"hindi blessing\">\u0965 \u0936\u094d\u0930\u0940 \u0917\u0923\u0947\u0936\u093e\u092f \u0928\u092e\u0903 \u0965<\/div><div class=\"eyebrow\">Together with our families<\/div><h1><i class=\"capital-a\">A<\/i>niket<span>&<\/span>Sunidhi<\/h1><p class=\"sub\">Two hearts. One forever.<\/p><div class=\"divider\">\u2727<\/div><p class=\"eyebrow\">Joyfully invite you to our wedding<\/p><p class=\"date\">07 \u00b7 DECEMBER \u00b7 2026<\/p><p class=\"location\">Aurangabad, Bihar<\/p><\/div>\n <a href=\"#asw-our-families\" class=\"scroll-cue\" style=\"text-decoration:none\">UNFOLD OUR CELEBRATION <span>\u2193<\/span><\/a>\n<\/section>\n<section class=\"section intro fade\" id=\"asw-our-families\"><span class=\"eyebrow\">With blessings, we begin<\/span><h2>A little destiny.<br><em>A lifetime of together.<\/em><\/h2><p class=\"lead\">With grateful hearts and the blessings of our families, we invite you to share in the joy of our wedding. Come for the celebrations. Stay for the memories.<\/p><div class=\"divider\">\u2767<\/div><div class=\"family-grid\"><div><h3><i class=\"capital-a\">A<\/i>niket Raj<\/h3><small>Beloved son of<\/small><p>Manoj Kr. Sinha<br>& Priyanka Sinha<\/p><\/div><div class=\"family-amp\">&<\/div><div><h3>Sunidhi Srivastava<\/h3><small>Beloved daughter of<\/small><p>Suresh Lal Srivastava<br>& Sweta Srivastava<\/p><\/div><\/div><\/section>\n<section class=\"section date-section\" id=\"asw-date\"><div class=\"date-layout\"><div class=\"date-intro\"><span class=\"eyebrow\">A date written in our hearts<\/span><h2 id=\"asw-reveal-heading\">A little surprise,<br><em>just for you.<\/em><\/h2><p id=\"asw-reveal-copy\">Brush away the golden dust.<br>Our forever is waiting underneath.<\/p><\/div><div class=\"date-interaction\"><div class=\"scratch-wrap\" id=\"asw-scratch-wrap\"><div class=\"scratch-under\" aria-hidden=\"true\"><span class=\"day\">07<\/span><span class=\"month\">DECEMBER<\/span><span class=\"year\">2026<\/span><span class=\"tiny\">MONDAY \u00b7 7:00 PM IST<\/span><\/div><canvas id=\"asw-scratch\" width=\"580\" height=\"540\" aria-label=\"Scratch the heart to reveal our wedding date\"><\/canvas><\/div><p class=\"scratch-help\" id=\"asw-scratch-status\" aria-live=\"polite\">RUB THE HEART TO REVEAL OUR DATE<\/p><button class=\"text-btn reveal-btn\" id=\"asw-reveal-date\">Or tap to reveal the date<\/button><br><button class=\"btn\" id=\"asw-save-date\">\u25a3 &nbsp; Save the date<\/button><\/div><\/div><div class=\"countdown-panel\"><p class=\"count-caption\" id=\"asw-count-caption\">Counting down to forever<\/p><div class=\"countdown\" aria-label=\"Countdown to the wedding\"><div><b id=\"asw-days\">\u2014<\/b><small>Days<\/small><\/div><div><b id=\"asw-hours\">\u2014<\/b><small>Hours<\/small><\/div><div><b id=\"asw-minutes\">\u2014<\/b><small>Minutes<\/small><\/div><div><b id=\"asw-seconds\">\u2014<\/b><small>Seconds<\/small><\/div><\/div><\/div><\/section>\n<section class=\"section events\" id=\"asw-celebrations\"><div class=\"fade\"><span class=\"eyebrow\">5 \u2014 7 December 2026<\/span><h2>Three days.<br><em>Countless beautiful moments.<\/em><\/h2><p class=\"intro-copy\">A little tradition, a little magic, and all our favourite people.<\/p><\/div>\n <article class=\"event fade\"><div class=\"event-date\"><strong>05<\/strong><span>DEC \u00b7 SAT<\/span><\/div><div><span class=\"tag\">Auspicious beginnings<\/span><h3>The Tilak Chronicles<\/h3><p><em>A tradition of love, a promise of forever.<\/em><\/p><p>Tilak ceremony \u00b7 7:00 PM<\/p><\/div><div class=\"event-place\"><b>Sinha Niwas<\/b><p>Club Road, Chitragupta Nagar<br>Aurangabad, Bihar 824101<\/p><\/div><\/article>\n <article class=\"event fade\"><div class=\"event-date\"><strong>06<\/strong><span>DEC \u00b7 SUN<\/span><\/div><div><span class=\"tag\">A golden celebration<\/span><h3>Haldi: Dipped in Sunshine<\/h3><p><em>Golden moments before our forever.<\/em><\/p><p>Haldi ceremony<\/p><\/div><div class=\"event-place\"><b>Panchdev Mandir<\/b><p>6 December 2026<\/p><a href=\"tel:+918507181544\">Contact family for timing \u2197<\/a><\/div><\/article>\n <article class=\"event fade\"><div class=\"event-date\"><strong>06<\/strong><span>DEC \u00b7 SUN<\/span><\/div><div><span class=\"tag\">Love in every little detail<\/span><h3>Mehendi: Hues of Happiness<\/h3><p><em>Mehendi, music & magic.<\/em><\/p><p>Mehendi celebration<\/p><\/div><div class=\"event-place\"><b>Panchdev Mandir<\/b><p>6 December 2026<\/p><a href=\"tel:+918507181544\">Contact family for timing \u2197<\/a><\/div><\/article>\n <article class=\"event fade\"><div class=\"event-date\"><strong>06<\/strong><span>DEC \u00b7 SUN<\/span><\/div><div><span class=\"tag\">Rooted in tradition<\/span><h3>Matkor<\/h3><p><em>Earth, blessings & new beginnings.<\/em><\/p><p>A celebration of our roots<\/p><\/div><div class=\"event-place\"><b>Sinha Niwas<\/b><p>Club Road, Chitragupta Nagar<br>Aurangabad, Bihar 824101<\/p><\/div><\/article>\n <article class=\"event fade\"><div class=\"event-date\"><strong>07<\/strong><span>DEC \u00b7 MON<\/span><\/div><div><span class=\"tag\">The wedding celebration<\/span><h3>Officially Locked<\/h3><p><em>December, Be Our Witness.<\/em><\/p><p>Wedding ceremony \u00b7 7:00 PM<\/p><\/div><div class=\"event-place\"><b>Vaishnavi Resort<\/b><p>Grand Trunk Road, Manju Rahi<br>Bihar 824102<\/p><a href=\"#asw-venue\">Find your way \u2197<\/a><\/div><\/article>\n<\/section>\n<section class=\"wedding-banner\"><svg class=\"banner-botanical\" aria-hidden=\"true\"><use href=\"#asw-door-vine\"\/><\/svg><svg class=\"banner-botanical right\" aria-hidden=\"true\"><use href=\"#asw-door-vine\"\/><\/svg><div class=\"banner-content fade\"><span class=\"eyebrow\">\u0936\u0941\u092d \u0935\u093f\u0935\u093e\u0939 \u00b7 The beginning of always<\/span><h2>December, Be Our Witness.<\/h2><p>Seven vows. Two families. One beautiful forever.<\/p><div class=\"divider\">\u2727<\/div><span class=\"eyebrow\">Aniket & Sunidhi \u00b7 7 December 2026<\/span><\/div><\/section>\n<section class=\"section venue\" id=\"asw-venue\"><div class=\"fade\"><span class=\"eyebrow\">The place we say forever<\/span><h2>Meet us at<br><em>Vaishnavi Resort.<\/em><\/h2><address>Grand Trunk Road, Manju Rahi<br>Bihar 824102<\/address><p>Monday, 7 December 2026<br>Wedding celebrations from 7:00 PM<\/p><a class=\"btn\" href=\"https:\/\/www.google.com\/maps\/search\/?api=1&query=Vaishnavi+Resort+Grand+Trunk+Road+Manju+Rahi+Bihar+824102\" target=\"_blank\" rel=\"noopener\">Open in Google Maps \u2197<\/a><p style=\"font-size:16px\">Need a hand finding us? <a href=\"tel:+918507181544\">Call the family<\/a>.<\/p><\/div><div class=\"map-frame fade\"><iframe title=\"Map search for Vaishnavi Resort, Grand Trunk Road, Manju Rahi\" loading=\"lazy\" referrerpolicy=\"no-referrer-when-downgrade\" src=\"https:\/\/maps.google.com\/maps?q=Vaishnavi%20Resort%20Grand%20Trunk%20Road%20Manju%20Rahi%20Bihar%20824102&output=embed\"><\/iframe><\/div><\/section>\n<div class=\"welcome-notes\"><div class=\"fade\"><span class=\"icon\">\u2767<\/span><h3>Come with your blessings<\/h3><p>Your presence and good wishes will make our celebration complete.<\/p><\/div><div class=\"fade\"><span class=\"icon\">\u2302<\/span><h3>Travelling to join us?<\/h3><p>For help with travel or accommodation, please get in touch with our family.<\/p><\/div><div class=\"fade\"><span class=\"icon\">\u2661<\/span><h3>Memories to keep<\/h3><p>Bring your smiles, your stories, and your favourite dance moves.<\/p><\/div><\/div>\n<section class=\"section rsvp\" id=\"asw-rsvp\"><div class=\"fade\"><span class=\"eyebrow\">Our celebration needs you<\/span><h2>Will you be<br><em>part of our forever?<\/em><\/h2><p>We look forward to celebrating with you.<br>Let our family know if you can join us.<\/p><div class=\"host\"><span class=\"eyebrow\">RSVP \u00b7 Groom\u2019s family<\/span><strong>Manoj Kumar Sinha<\/strong><span>(Advocate, Taxation)<\/span><a class=\"phone\" href=\"tel:+918507181544\">+91 8507181544 \u2197<\/a><\/div><\/div><form id=\"asw-rsvp-form\" class=\"fade\"><div class=\"field\"><label for=\"asw-guest-name\">YOUR NAME *<\/label><input id=\"asw-guest-name\" name=\"name\" autocomplete=\"name\" placeholder=\"Your full name\" required maxlength=\"100\"><\/div><div class=\"field\"><label for=\"asw-attendance\">WILL YOU BE JOINING US? *<\/label><select id=\"asw-attendance\" required><option value=\"\">Please select<\/option><option value=\"Joyfully accepting\">Joyfully accepting<\/option><option value=\"Regretfully declining\">Regretfully declining<\/option><option value=\"Will confirm soon\">Will confirm soon<\/option><\/select><\/div><div class=\"field\"><label for=\"asw-guest-count\">NUMBER OF GUESTS, INCLUDING YOU<\/label><input id=\"asw-guest-count\" type=\"number\" min=\"1\" max=\"50\" value=\"1\" inputmode=\"numeric\"><\/div><div class=\"field\"><label for=\"asw-guest-message\">A NOTE FOR THE FAMILY<\/label><textarea id=\"asw-guest-message\" placeholder=\"Your wishes or a little message\u2026\" maxlength=\"1000\"><\/textarea><\/div><button class=\"btn\" type=\"submit\">Continue to WhatsApp \u2197<\/button><p class=\"form-note\">Your response opens as a WhatsApp message to Manoj Kumar Sinha. Review it and tap Send there to confirm your RSVP.<\/p><p class=\"rsvp-feedback\" id=\"asw-rsvp-feedback\" role=\"status\"><\/p><\/form><\/section>\n<\/main>\n<footer class=\"footer\"><div class=\"footer-main\"><div class=\"footer-signature\"><div class=\"hindi\">\u0938\u093e\u0926\u0930 \u0906\u092e\u0902\u0924\u094d\u0930\u0923<\/div><div class=\"script footer-names\"><span><i class=\"capital-a\">A<\/i>niket<\/span><span class=\"footer-amp\">&<\/span><span>Sunidhi<\/span><\/div><\/div><div class=\"footer-message\"><p>Your presence is our honour.<\/p><div class=\"divider\">\u2767<\/div><div class=\"eyebrow\">With love, the Sinha & Srivastava families<\/div><\/div><\/div><button class=\"text-btn\" id=\"asw-replay\">Replay the invitation opening \u21ba<\/button><\/footer>\n<nav class=\"mobile-bottom\" aria-label=\"Quick links\"><a href=\"#asw-celebrations\">CELEBRATIONS<\/a><a href=\"#asw-venue\">DIRECTIONS<\/a><a href=\"#asw-rsvp\">RSVP \u2197<\/a><\/nav>\n<\/div>\n<noscript><div class=\"noscript\"><h1>Aniket & Sunidhi<\/h1><p>7 December 2026 \u00b7 7:00 PM<br>Vaishnavi Resort, Grand Trunk Road, Manju Rahi, Bihar 824102<\/p><p>Please enable JavaScript for the interactive invitation.<\/p><a href=\"tel:+918507181544\">RSVP: +91 8507181544<\/a><\/div><\/noscript>\n\n<\/div>\n<script>\n\n(()=>{'use strict';\nconst root=document.getElementById('as-wedding');\nif(!root||root.dataset.aswReady==='yes')return;\nroot.dataset.aswReady='yes';\nlet scrollLocked=false,savedBodyOverflow='',savedHtmlOverflow='';\nfunction lockScroll(){if(scrollLocked)return;scrollLocked=true;savedBodyOverflow=document.body.style.overflow;savedHtmlOverflow=document.documentElement.style.overflow;document.body.style.overflow='hidden';document.documentElement.style.overflow='hidden';requestAnimationFrame(()=>scheduleLayout());}\nfunction unlockScroll(){if(!scrollLocked)return;document.body.style.overflow=savedBodyOverflow;document.documentElement.style.overflow=savedHtmlOverflow;scrollLocked=false;requestAnimationFrame(()=>scheduleLayout());}\n\nconst $=id=>root.querySelector('#asw-'+id), opening=$('opening'), site=$('site');let openingTimers=[],openingBusy=false;const reduced=matchMedia('(prefers-reduced-motion: reduce)').matches;\nfunction finishOpening(){openingTimers.forEach(clearTimeout);opening.hidden=true;site.inert=false;unlockScroll();openingBusy=false;root.scrollIntoView({block:'start',behavior:'instant'});$('invitation').focus({preventScroll:true});}\nfunction openInvite(skip=false){if(openingBusy&&!skip)return;openingBusy=true;if(skip||reduced){finishOpening();return;}opening.classList.add('go');openingTimers.push(setTimeout(()=>opening.classList.add('curtains'),1900),setTimeout(finishOpening,4000));}\n$('open-invite').onclick=()=>openInvite();$('skip-intro').onclick=()=>openInvite(true);$('skip-access').onclick=()=>openInvite(true);\nopening.addEventListener('keydown',e=>{if(e.key==='Escape'){openInvite(true);return;}if(e.key==='Tab'){const first=$('open-invite'),last=$('skip-intro');if(e.shiftKey&&document.activeElement===first){e.preventDefault();last.focus()}else if(!e.shiftKey&&document.activeElement===last){e.preventDefault();first.focus()}}});\n$('replay').onclick=()=>{root.scrollIntoView({block:'start',behavior:'instant'});opening.classList.remove('go','curtains');opening.hidden=false;site.inert=true;lockScroll();$('open-invite').focus({preventScroll:true});};\nconst observer=new IntersectionObserver(entries=>entries.forEach(e=>{if(e.isIntersecting){e.target.classList.add('visible');observer.unobserve(e.target)}}),{threshold:.08});root.querySelectorAll('.fade').forEach(el=>observer.observe(el));\nconst canvas=$('scratch'),ctx=canvas.getContext('2d',{willReadFrequently:true}),heart=new Path2D('M145 253 C120 228 12 164 12 88 C12 14 104 2 145 65 C186 2 278 14 278 88 C278 164 170 228 145 253 Z');let revealed=false,drawing=false,moves=0;ctx.scale(2,2);ctx.save();ctx.clip(heart);const grad=ctx.createRadialGradient(110,85,5,145,140,170);grad.addColorStop(0,'#c3c4a0');grad.addColorStop(.5,'#8c997b');grad.addColorStop(1,'#5d7155');ctx.fillStyle=grad;ctx.fillRect(0,0,290,270);for(let i=0;i<4500;i++){ctx.fillStyle=i%2?'#f5e8b966':'#435d4722';ctx.fillRect(Math.random()*290,Math.random()*270,Math.random()*1.8,.7)}ctx.fillStyle='#f5efdb';ctx.textAlign='center';ctx.font='italic 23px Georgia';ctx.fillText('Scratch to reveal',145,130);ctx.font='11px Arial';ctx.fillText('OUR FOREVER',145,156);ctx.restore();\nfunction celebrate(){if(reduced)return;for(let i=0;i<55;i++){const el=document.createElement('i');el.className='petal';el.style.left=Math.random()*100+'vw';el.style.setProperty('--drift',(Math.random()*240-120)+'px');el.style.animationDelay=Math.random()*.9+'s';el.style.background=['#b29a62','#889673','#d1b991','#ecdfc7'][i%4];root.appendChild(el);setTimeout(()=>el.remove(),5100)}}\nfunction reveal(){if(revealed)return;revealed=true;drawing=false;$('scratch-wrap').classList.add('revealed');$('reveal-heading').innerHTML='Our forever<br><em>begins.<\/em>';$('reveal-copy').textContent='December, Be Our Witness.';$('scratch-status').textContent='7 DECEMBER 2026 \u00b7 7:00 PM IST';$('reveal-date').hidden=true;$('scratch-wrap').querySelector('.scratch-under').removeAttribute('aria-hidden');celebrate();}\nfunction scratch(e){if(!drawing||revealed)return;const r=canvas.getBoundingClientRect(),x=(e.clientX-r.left)*290\/r.width,y=(e.clientY-r.top)*270\/r.height;ctx.globalCompositeOperation='destination-out';ctx.lineWidth=36;ctx.lineCap='round';ctx.lineTo(x,y);ctx.stroke();ctx.beginPath();ctx.moveTo(x,y);moves++;if(moves%6===0){const pixels=ctx.getImageData(0,0,580,540).data;let gone=0,total=0;for(let yy=20;yy<250;yy+=8){for(let xx=12;xx<278;xx+=8){if(ctx.isPointInPath(heart,xx*2,yy*2)){total++;if(pixels[((yy*2)*580+xx*2)*4+3]<30)gone++;}}}if(total&&gone\/total>.4)reveal();}}\ncanvas.addEventListener('pointerdown',e=>{if(revealed)return;drawing=true;canvas.setPointerCapture(e.pointerId);ctx.beginPath();const r=canvas.getBoundingClientRect();ctx.moveTo((e.clientX-r.left)*290\/r.width,(e.clientY-r.top)*270\/r.height);scratch(e)});canvas.addEventListener('pointermove',scratch);['pointerup','pointercancel','lostpointercapture'].forEach(type=>canvas.addEventListener(type,()=>{drawing=false;ctx.beginPath()}));$('reveal-date').onclick=reveal;\nconst target=new Date('2026-12-07T19:00:00+05:30');function countdown(){const total=Math.max(0,Math.floor((target-Date.now())\/1000));const nums=[Math.floor(total\/86400),Math.floor(total\/3600)%24,Math.floor(total\/60)%60,total%60];['days','hours','minutes','seconds'].forEach((id,i)=>$(id).textContent=String(nums[i]).padStart(2,'0'));if(!total)$('count-caption').textContent='Our forever has begun';}countdown();const countdownTimer=setInterval(countdown,1000);\n$('save-date').onclick=()=>{const ics=['BEGIN:VCALENDAR','VERSION:2.0','PRODID:-\/\/Aniket and Sunidhi\/\/Wedding Invitation\/\/EN','CALSCALE:GREGORIAN','BEGIN:VEVENT','UID:aniket-sunidhi-20261207@wedding-invitation','DTSTAMP:'+new Date().toISOString().replace(\/[-:]\/g,'').replace(\/\\.\\d{3}\/,''),'DTSTART:20261207T133000Z','SUMMARY:Aniket & Sunidhi \u2014 Wedding Celebration','LOCATION:Vaishnavi Resort\\\\, Grand Trunk Road\\\\, Manju Rahi\\\\, Bihar 824102','DESCRIPTION:Celebrate the wedding of Aniket Raj and Sunidhi Srivastava. RSVP: Manoj Kumar Sinha +91 8507181544.','END:VEVENT','END:VCALENDAR'].join('\\r\\n');const url=URL.createObjectURL(new Blob([ics],{type:'text\/calendar;charset=utf-8'})),a=document.createElement('a');a.href=url;a.download='Aniket-Sunidhi-Wedding.ics';a.hidden=true;root.appendChild(a);a.click();a.remove();setTimeout(()=>URL.revokeObjectURL(url),30000);};\n$('attendance').onchange=()=>{$('guest-count').disabled=$('attendance').value==='Regretfully declining';};$('rsvp-form').onsubmit=e=>{e.preventDefault();const name=$('guest-name').value.trim();if(!name){$('guest-name').setCustomValidity('Please enter your name.');$('guest-name').reportValidity();return;}const attending=$('attendance').value,guests=attending==='Regretfully declining'?'0':$('guest-count').value;const message=`Namaste Manoj ji,\\n\\nRSVP for Aniket & Sunidhi's wedding on 7 December 2026.\\nName: ${name}\\nResponse: ${attending}\\nGuests: ${guests}\\n${$('guest-message').value.trim()?'\\nMessage: '+$('guest-message').value.trim():''}\\n\\nWith warm wishes.`;const url='https:\/\/wa.me\/918507181544?text='+encodeURIComponent(message);const link=document.createElement('a');link.href=url;link.target='_blank';link.rel='noopener';link.hidden=true;root.appendChild(link);link.click();link.remove();$('rsvp-feedback').textContent='Please tap Send in WhatsApp to deliver your response.';};$('guest-name').oninput=()=>{$('guest-name').setCustomValidity('');};\nlet audioCtx=null,soundTimer=null,soundOn=false,noteIndex=0;const notes=[261.63,329.63,392,523.25,392,329.63,293.66,440];function chime(){if(!audioCtx||!soundOn)return;const t=audioCtx.currentTime,o=audioCtx.createOscillator(),g=audioCtx.createGain();o.type='sine';o.frequency.value=notes[noteIndex++%notes.length];g.gain.setValueAtTime(0,t);g.gain.linearRampToValueAtTime(.07,t+.04);g.gain.exponentialRampToValueAtTime(.0001,t+3.5);o.connect(g);g.connect(audioCtx.destination);o.start(t);o.stop(t+3.6)}$('sound').onclick=async()=>{try{soundOn=!soundOn;if(soundOn){audioCtx=audioCtx||new(window.AudioContext||window.webkitAudioContext)();await audioCtx.resume();chime();soundTimer=setInterval(chime,1800)}else{clearInterval(soundTimer);if(audioCtx)await audioCtx.suspend()}$('sound').textContent=soundOn?'\u266b Sound on':'\u266b Sound off';$('sound').setAttribute('aria-pressed',String(soundOn))}catch{soundOn=false;$('sound').textContent='Sound unavailable';}};\n\nroot.querySelectorAll('a[href^=\"#asw-\"]').forEach(link=>link.addEventListener('click',event=>{\n const target=root.querySelector(link.getAttribute('href'));if(!target)return;\n event.preventDefault();target.scrollIntoView({behavior:reduced?'auto':'smooth',block:'start'});\n}));\nconst editing=!!(window.elementorFrontend&&typeof window.elementorFrontend.isEditMode==='function'&&window.elementorFrontend.isEditMode())||document.body.classList.contains('elementor-editor-active');\nif(editing){opening.hidden=true;site.inert=false;root.querySelectorAll('.fade').forEach(el=>el.classList.add('visible'));}\nelse{root.classList.add('asw-ready');opening.hidden=false;site.inert=true;lockScroll();$('open-invite').focus({preventScroll:true});}\n\n\/\/ Break this invitation out of a boxed Elementor parent without changing other widgets.\nconst hostNodes=[];\nfor(let host=root.parentElement;host&&host!==document.body;host=host.parentElement){\n if(host.matches('.elementor-widget-container,.elementor-widget-html,.e-con,.e-con-inner,.elementor-container,.elementor-column,.elementor-widget-wrap')){host.classList.add('asw-invitation-host');hostNodes.push(host);}\n}\nlet layoutFrame=0;\nfunction syncAdminOffset(){\n const bar=document.getElementById('wpadminbar');\n const rect=bar?bar.getBoundingClientRect():null;\n const offset=rect?Math.max(0,Math.min(rect.height,rect.bottom)):0;\n root.style.setProperty('--asw-admin-offset',offset+'px');\n}\nfunction syncPageWidth(){\n layoutFrame=0;if(!root.isConnected)return;\n syncAdminOffset();\n if(editing)return;\n const viewport=document.documentElement.clientWidth;\n const oldShift=parseFloat(root.style.getPropertyValue('--asw-page-shift'))||0;\n const naturalLeft=root.getBoundingClientRect().left-oldShift;\n const shift=Math.round(-naturalLeft*100)\/100;\n if(root.style.getPropertyValue('--asw-page-width')!==viewport+'px')root.style.setProperty('--asw-page-width',viewport+'px');\n if(root.style.getPropertyValue('--asw-page-shift')!==shift+'px')root.style.setProperty('--asw-page-shift',shift+'px');\n}\nfunction scheduleLayout(){if(!layoutFrame)layoutFrame=requestAnimationFrame(syncPageWidth);}\nwindow.addEventListener('resize',scheduleLayout,{passive:true});\nwindow.addEventListener('scroll',syncAdminOffset,{passive:true});\nconst layoutObserver=typeof ResizeObserver!=='undefined'?new ResizeObserver(scheduleLayout):null;\nif(layoutObserver&&root.parentElement)layoutObserver.observe(root.parentElement);\nscheduleLayout();\n\n\/\/ Release timers and scroll locking if Elementor removes\/replaces this widget.\nconst removalObserver=new MutationObserver(()=>{if(root.isConnected)return;openingTimers.forEach(clearTimeout);clearInterval(countdownTimer);clearInterval(soundTimer);if(audioCtx)audioCtx.close().catch(()=>{});observer.disconnect();unlockScroll();window.removeEventListener(\"resize\",scheduleLayout);window.removeEventListener(\"scroll\",syncAdminOffset);if(layoutObserver)layoutObserver.disconnect();cancelAnimationFrame(layoutFrame);hostNodes.forEach(host=>host.classList.remove(\"asw-invitation-host\"));removalObserver.disconnect();});\nremovalObserver.observe(document.body,{childList:true,subtree:true});\n})();\n<\/script>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Skip opening and read invitation \u0936\u094d\u0930\u0940 \u0917\u0923\u0947\u0936\u093e\u092f \u0928\u092e\u0903 Every beautiful beginningstarts with a blessing. An invitation, with loveA beautiful beginning A &#038; S7 \u00b7 12 \u00b7 2026 Some stories are meant to be celebrated. Touch the seal to open SKIP ANIMATION \u2197 A &#038; S Our familiesCelebrationsVenue \u266b Sound off \u0965 \u0936\u094d\u0930\u0940 \u0917\u0923\u0947\u0936\u093e\u092f \u0928\u092e\u0903 \u0965Together [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"footnotes":""},"class_list":["post-6","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/aniketsunidhi.love\/index.php?rest_route=\/wp\/v2\/pages\/6","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/aniketsunidhi.love\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/aniketsunidhi.love\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/aniketsunidhi.love\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/aniketsunidhi.love\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=6"}],"version-history":[{"count":10,"href":"https:\/\/aniketsunidhi.love\/index.php?rest_route=\/wp\/v2\/pages\/6\/revisions"}],"predecessor-version":[{"id":20,"href":"https:\/\/aniketsunidhi.love\/index.php?rest_route=\/wp\/v2\/pages\/6\/revisions\/20"}],"wp:attachment":[{"href":"https:\/\/aniketsunidhi.love\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=6"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}