@font-face{font-family:Devanagari;src:url(devanagari.ttf);font-display:swap}:root{--wine:#370d1b;--paper:#faf3e7;--gold:#c8a369;--ink:#3d2623}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--wine);color:var(--paper);font:16px/1.7 Georgia,serif}body.locked{overflow:hidden}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{cursor:default;opacity:.5}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}.marathi{font-family:Devanagari,serif;line-height:1.8}.kicker{font:10px/1.5 Arial,sans-serif;letter-spacing:3px;color:var(--gold)}.preview{text-align:center;padding:9px 14px;font:9px/1.5 Arial,sans-serif;letter-spacing:1.4px;background:#241114;color:#dcc5a2}header{position:sticky;top:0;z-index:8;display:flex;align-items:center;justify-content:space-between;padding:18px 34px;gap:25px;background:#300d1beb;border-bottom:1px solid #c8a36935;backdrop-filter:blur(15px)}.brand{font-size:18px;line-height:1.4;white-space:nowrap}.brand span{display:block;font:8px/2 Arial,sans-serif;letter-spacing:2px;color:var(--gold)}nav{display:flex;align-items:center;gap:22px}nav a{font:10px/1.5 Arial,sans-serif;letter-spacing:1px;position:relative;padding:9px 0}nav a:after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--gold);transition:width .3s}nav a:hover:after{width:100%}#menu{display:none}.hero{position:relative;min-height:790px;display:grid;place-items:center;overflow:hidden}.hero-art,.opening-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-art{opacity:.42;transform:scale(1.05)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#210913c9,#2109134a 50%,#210913aa),linear-gradient(0deg,var(--wine),transparent 50%)}.gold-frame{position:absolute;inset:45px 65px 70px;border:1px solid #c8a36965;border-radius:180px 180px 0 0}.hero-content{position:relative;text-align:center;max-width:850px;padding:75px 25px 120px}.intro{font-size:22px;color:#e6c489;margin:22px 0}.hero h1{font-size:clamp(56px,7vw,94px);font-weight:400;line-height:1.12;margin:22px 0;color:#fae5b8;text-shadow:0 2px 20px #0006}.hero h1 span{display:block;font-size:40px;font-style:italic;color:var(--gold);margin:7px 0}.invitation{font-size:17px;color:#f3dcc0;margin:30px 0}.hero-date{font:11px/1.8 Arial,sans-serif;letter-spacing:1px;color:#ddc9b5}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:14px 24px;border:1px solid var(--gold);background:transparent;color:inherit;min-height:48px;font:11px/1.8 Arial,sans-serif;letter-spacing:1px;position:relative;overflow:hidden}.button:after{content:'';position:absolute;inset:0;transform:translateX(-110%);background:linear-gradient(100deg,transparent,#d9b87530,transparent);transition:transform .65s}.button:hover:after{transform:translateX(110%)}.hero .button{margin-top:32px}.scroll-note{position:absolute;bottom:30px;font:8px Arial,sans-serif;letter-spacing:3px;color:var(--gold)}.section{padding:95px max(6vw,24px)}.ivory{background:var(--paper);color:var(--ink)}.section-heading{max-width:680px;margin:0 auto 55px;text-align:center}.section-heading h2{font-size:49px;line-height:1.3;font-weight:400;margin:14px 0 20px}.section-heading h2.marathi{font-size:40px}.section-heading p{font-size:14px;max-width:490px;margin:0 auto;opacity:.7}.ivory .kicker{color:#8c5a32}.couple-grid{max-width:950px;display:grid;grid-template-columns:1fr 1fr;gap:50px;margin:auto}.portrait{position:relative;background:linear-gradient(145deg,#e9d8bb,#f2e5ce);color:var(--ink);border:1px solid #b59057;min-height:455px;display:flex;flex-direction:column;justify-content:space-between;padding:30px;transition:transform .3s,box-shadow .3s}.portrait:before{content:'';position:absolute;inset:12px;border:1px solid #b5905750;pointer-events:none}.portrait:hover,.portrait.active{box-shadow:0 15px 40px #5c342120}.portrait-space{flex:1;display:grid;place-items:center;font:12px Arial,sans-serif;opacity:.5}.portrait-title .marathi{font-size:25px;color:#8d593a;display:block}.portrait-title strong{font-size:32px;font-weight:400}.story{background:radial-gradient(ellipse at 20% 70%,#5b2430,var(--wine) 75%)}.chapter-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;max-width:1000px;margin:65px auto}.chapter-photo{min-height:350px;background:#e8d8bd;color:#886947;border:14px solid #faf1e1;border-bottom-width:50px;transform:rotate(-4deg);box-shadow:20px 25px 70px #18071080;display:flex;flex-direction:column;align-items:center;justify-content:center;font:12px Arial,sans-serif}.photo-icon{font-size:55px;opacity:.4;margin-bottom:25px}.chapter-copy{align-self:center}.chapter-number{font:10px Arial,sans-serif;letter-spacing:2px;color:var(--gold)}.chapter-copy h3{font-size:39px;margin:22px 0 0;font-weight:400}.chapter-copy h4{font-size:23px;font-weight:400;margin:7px 0}.chapter-copy p{font-size:15px;opacity:.65;max-width:380px}.chapter-controls{display:flex;gap:12px;margin-top:24px}.chapter-controls button{width:48px;height:48px;color:var(--gold);background:transparent;border:1px solid #c8a36955}.chapter-tabs{display:flex;justify-content:center;gap:35px;margin-top:70px;flex-wrap:wrap}.chapter-tabs button{color:var(--paper);background:transparent;border:0;border-bottom:1px solid #c8a36940;padding:10px 3px;opacity:.5;font:11px Arial,sans-serif;min-height:44px}.chapter-tabs button[aria-selected=true]{opacity:1;border-bottom-color:var(--gold)}.wedding{padding-top:95px;background:#24150f}.mandap-wrap{position:relative;overflow:hidden}.mandap-wrap img{width:100%;display:block;min-height:450px;object-fit:cover;transition:transform .5s}.mandap-shade{position:absolute;inset:0;background:linear-gradient(0deg,#24150f,transparent 50%)}.mandap-text{position:absolute;bottom:30px;width:100%;text-align:center;padding:20px}.mandap-text h3{font-size:36px;font-weight:400;margin:8px 0}.mandap-text p{font-size:13px}.art-note{text-align:center;font:10px/1.7 Arial,sans-serif;opacity:.55;padding:0 20px}.countdown{text-align:center;padding:50px 20px 90px}.countdown h3{font-size:26px;font-weight:400;color:var(--gold)}.count-grid{display:flex;justify-content:center;gap:45px}.count-grid strong{display:block;font-size:54px;line-height:1.3;font-weight:400;color:#e7c797}.count-grid span{font:9px Arial,sans-serif;text-transform:uppercase;letter-spacing:2px;color:#bca38a}.countdown p{font-size:12px;opacity:.55}.event-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:1120px;margin:auto;gap:25px}.event-card{padding:35px 27px;border:1px solid #c2a47766;background:#f8efdf;transition:transform .3s;position:relative}.event-card .symbol{font-size:28px;color:#a97440}.event-card h3{font-size:27px;font-weight:400;margin:10px 0 0}.event-card h4{font-size:17px;font-weight:400;margin:0 0 26px}.event-card p{font-size:12px;margin:9px 0;opacity:.65}.event-card .button{font-size:9px;margin-top:17px;padding:9px 16px}.gallery{background:#310f1c}.gallery-grid{max-width:1050px;display:grid;grid-template-columns:1.2fr 1fr;grid-template-rows:220px 220px;gap:24px;margin:auto}.photo-space{background:linear-gradient(140deg,#582c34,#381721);border:1px solid #b38d5855;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#d6bb99;opacity:1!important}.photo-space.tall{grid-row:span 2}.photo-space span{font-size:40px;opacity:.25}.photo-space p{font-size:12px;opacity:.55}.art-preview{max-width:1050px;margin:35px auto 0;font-size:12px;color:#c7ad93}.art-preview summary{cursor:pointer;min-height:44px}.art-thumbs{display:flex;gap:15px}.art-thumbs button{padding:0;border:1px solid var(--gold);background:none;width:180px}.art-thumbs img{width:100%;display:block}.family-card{max-width:730px;text-align:center;margin:auto;padding:45px 35px;border:1px solid #b5905770}.ornament{font-size:58px;line-height:1.5;color:var(--gold)}.muted{font-size:12px;opacity:.55}.location-grid{max-width:1100px;margin:auto;display:grid;grid-template-columns:1.4fr 1fr;gap:60px;align-items:center}.location-grid h3{font-size:32px;font-weight:400}.map-placeholder{height:320px;background:#4b2730;border:1px solid #b38d5855;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-size:12px;color:#d5b78f;padding:20px}.map-placeholder svg{max-width:100%;height:180px;fill:none;stroke:#c6a067;stroke-width:1;stroke-dasharray:7}.map-placeholder circle{fill:#c6a067}.rsvp-card{max-width:630px;margin:auto;border:1px solid #c3a16b;padding:40px;background:#f6ecda}.rsvp-card label{display:block;font-size:13px;margin-bottom:20px}.rsvp-card input,.rsvp-card select,.rsvp-card textarea{display:block;border:0;border-bottom:1px solid #c4aa88;width:100%;margin-top:8px;padding:12px 8px;background:#fcf6ea;color:var(--ink);font-size:13px;border-radius:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}#rsvp-confirmation{border-top:1px solid #b5905770;margin-top:25px;padding-top:20px}#rsvp-confirmation .marathi{font-size:19px}#rsvp-confirmation p:last-child{font:11px Arial,sans-serif}.farewell{text-align:center;padding:100px 25px;background:radial-gradient(ellipse,#5b1b2b,var(--wine))}.farewell h2{font-size:46px;font-weight:400;margin:25px 0}.farewell h2 em{color:var(--gold)}.farewell .marathi{font-size:22px}.sound,.motion{position:fixed;bottom:20px;z-index:9;color:#dfc5a0;background:#2d111eeb;border:1px solid #c8a36955;padding:10px 14px;font:10px Arial,sans-serif;min-height:40px}.sound{left:18px;opacity:1!important}.motion{right:18px}dialog{width:90vw;max-width:1100px;border:1px solid var(--gold);padding:12px;background:#210c13;color:#dcc5a2}dialog::backdrop{background:#080307ec}dialog img{display:block;width:100%;max-height:80vh;object-fit:contain}dialog p{text-align:center;font-size:12px}#lightbox-close{position:absolute;right:15px;top:15px;width:45px;height:45px;background:#200b14d9;border:1px solid var(--gold);color:#f5dcb4;font-size:25px}.opening{position:fixed;inset:0;z-index:20;background:#260b15;display:grid;place-items:center;overflow:hidden;transition:opacity 1s,transform 1.1s}.opening-art{opacity:.42;animation:camera 10s ease-out both}.opening-shade{position:absolute;inset:0;background:linear-gradient(0deg,#250b16dc,transparent 65%,#210a15a0)}.opening-frame{position:absolute;inset:25px;border:1px solid #bd954a;border-radius:160px 160px 0 0;animation:frame 2s ease both}.opening-content{position:relative;text-align:center;max-width:800px;width:100%;padding:30px}.opening-content h2{font-size:34px;font-weight:400;color:#eed3a2;margin:22px 0}.opening-names{font-size:27px;color:#ead3b2}.opening-names em{color:var(--gold)}.invite-card{display:flex;flex-direction:column;gap:15px;align-items:center;max-width:420px;margin:30px auto 15px;padding:23px 35px;border:1px solid #d4b37b;background:linear-gradient(145deg,#f0dec0,#fcf2df);color:#5a2030;transform:perspective(1000px) rotateX(4deg);box-shadow:0 25px 70px #0008;transition:transform .6s}.invite-card:hover{transform:perspective(1000px) rotateX(0) translateY(-5px)}.invite-card .marathi{font-size:17px}.seal{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;border:3px double #bd965f;background:#681d30;color:#e6cda0;font-size:30px}.invite-card small{font:10px Arial,sans-serif;letter-spacing:1px}.draft-note{font:10px/1.8 Arial,sans-serif;color:#d8bd9c}.opening.leaving{opacity:0;transform:scale(1.1);pointer-events:none}.opening.leaving .invite-card{transform:perspective(1000px) rotateY(-75deg) scale(1.7)}.petals{position:fixed;inset:0;pointer-events:none;z-index:21;overflow:hidden}.petal{position:absolute;top:-20px;width:9px;height:15px;border-radius:80% 0 80% 0;background:linear-gradient(120deg,#d9a538,#963f15);opacity:.45;animation:fall var(--duration) linear infinite;animation-delay:var(--delay)}.reveal{opacity:0;transform:translateY(30px);transition:opacity .9s,transform .9s}.reveal.visible{opacity:1;transform:none}body.motion-off *{animation:none!important;transition:none!important;scroll-behavior:auto!important}body.motion-off .petals{display:none}body.motion-off .reveal{opacity:1;transform:none}@keyframes camera{from{transform:scale(1.14)}to{transform:scale(1)}}@keyframes frame{from{opacity:0;clip-path:inset(0 50% 0 50%)}to{opacity:1;clip-path:inset(0)}}@keyframes fall{to{transform:translate3d(70px,110vh,0) rotate(360deg)}}
@media(max-width:1100px){nav{gap:12px}nav a{font-size:9px}header{padding:16px 23px}.brand{font-size:16px}}@media(max-width:800px){header{padding:15px 21px}.brand{font-size:15px}#menu{display:flex;flex-direction:column;gap:7px;padding:13px 10px;border:0;background:transparent;width:44px;height:44px}#menu i{height:1px;width:24px;background:var(--gold);transition:transform .3s}#menu[aria-expanded=true] i:first-child{transform:translateY(4px) rotate(45deg)}#menu[aria-expanded=true] i:last-child{transform:translateY(-4px) rotate(-45deg)}nav{display:none;position:absolute;top:75px;left:0;right:0;background:#310e1dee;padding:20px;grid-template-columns:1fr 1fr;gap:0;border-bottom:1px solid #c8a36955}nav.open{display:grid}nav a{font-size:11px;padding:17px}.hero{min-height:730px}.hero-art{object-position:50% 45%}.hero-content{padding:75px 28px 110px}.hero h1{font-size:54px}.gold-frame{inset:25px 18px 50px;border-radius:135px 135px 0 0}.intro{font-size:18px}.invitation{font-size:15px}.kicker{font-size:9px;letter-spacing:2px}.section{padding:65px 26px}.section-heading{margin-bottom:35px}.section-heading h2{font-size:37px}.section-heading h2.marathi{font-size:30px}.section-heading p{font-size:13px}.couple-grid{gap:18px}.portrait{min-height:290px;padding:19px 10px}.portrait-space{font-size:10px}.portrait-title strong{font-size:23px}.portrait-title .marathi{font-size:21px}.chapter-layout{grid-template-columns:1fr;gap:50px;margin:40px auto;max-width:500px}.chapter-photo{min-height:300px;margin:10px 16px}.chapter-copy{text-align:center}.chapter-copy p{margin:auto}.chapter-controls{justify-content:center}.chapter-tabs{gap:17px;margin-top:35px}.chapter-tabs button{font-size:10px}.wedding{padding-top:65px}.mandap-wrap img{min-height:400px;object-fit:cover;object-position:center}.mandap-text{bottom:12px}.mandap-text h3{font-size:28px}.count-grid{gap:24px}.count-grid strong{font-size:42px}.count-grid span{letter-spacing:1px;font-size:8px}.countdown{padding:40px 20px 60px}.countdown h3{font-size:23px}.event-grid{grid-template-columns:1fr 1fr;gap:14px}.event-card{padding:23px 16px}.event-card h3{font-size:23px}.event-card h4{font-size:15px}.event-card .button{padding:8px 10px;font-size:8px;width:100%}.gallery-grid{grid-template-rows:165px 165px;gap:12px}.photo-space p{font-size:10px;padding:0 12px;text-align:center}.location-grid{grid-template-columns:1fr;gap:20px}.location-grid h3{margin:10px 0}.map-placeholder{height:260px}.rsvp-card{padding:26px 20px}.form-row{gap:14px}.family-card{padding:30px 20px}.farewell{padding:70px 28px 100px}.farewell h2{font-size:34px}.farewell .marathi{font-size:17px}.opening-frame{inset:18px;border-radius:125px 125px 0 0}.opening-content{padding:38px 30px}.opening-content h2{font-size:25px;margin:18px 0}.opening-names{font-size:23px}.invite-card{padding:24px 20px;max-width:320px}.invite-card .marathi{font-size:15px}.opening-art{object-position:50% 50%}.sound,.motion{font-size:9px;bottom:12px;padding:10px;min-height:40px}.sound{left:12px}.motion{right:12px}}@media(max-width:360px){.hero h1{font-size:46px}.couple-grid{grid-template-columns:1fr}.event-grid{grid-template-columns:1fr}.opening-content h2{font-size:22px}.count-grid{gap:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.petals{display:none}.reveal{opacity:1;transform:none}.hero-art{transform:none}}
/* Controls stay in the page flow rather than covering invitation text. */
.sound,.motion{position:static;margin:14px 0 22px 18px;display:inline-block}.petal{opacity:.3}.opening .petal{opacity:.4}
@media(max-width:800px){.portrait-title strong{font-size:21px;display:block;overflow-wrap:anywhere}.mandap-wrap img{min-height:0;aspect-ratio:1.15;object-fit:cover}.mandap-text{bottom:8px}.mandap-text h3{font-size:25px}}
.forming-frame{position:absolute;inset:18px;width:calc(100% - 36px);height:calc(100% - 36px);fill:none;stroke:#cba768;stroke-width:1.1;pointer-events:none}.forming-frame path{stroke-dasharray:4000;stroke-dashoffset:4000;animation:frame-draw 3.6s ease-out forwards}.gold-sweep{position:absolute;inset:-20%;background:linear-gradient(105deg,transparent 35%,#ffdba71a 49%,transparent 60%);transform:translateX(-80%);animation:sweep 5s ease-out both;pointer-events:none}.opening-names,.hero h1{background:linear-gradient(105deg,#bc8a49,#ffedc7 40%,#d2a15e 55%,#fae6bb 70%);background-clip:text;color:transparent}.opening-content{animation:title-focus 2.3s ease both}.opening.leaving .opening-content{animation:none}.lotus-ornament svg{width:90px;height:75px}.story-thread{max-width:750px;height:1px;margin:50px auto -30px;background:linear-gradient(90deg,transparent,#bb8b51,transparent)}.chapter-tabs button{transition:opacity .4s,color .4s;position:relative}.chapter-tabs button:before{content:'';position:absolute;top:-12px;left:calc(50% - 3px);width:6px;height:6px;border:1px solid var(--gold);transform:rotate(45deg)}.chapter-tabs button[aria-selected=true]:before{background:var(--gold);box-shadow:0 0 12px #d7a55b}.chapter-photo.turning{animation:chapter-turn .55s ease}.event-card:after{content:'';position:absolute;inset:7px;border:1px solid #c5a37125;pointer-events:none}.family-card{background-image:radial-gradient(#b7955a10 1px,transparent 1px);background-size:15px 15px}.hero:after,.farewell:before{content:'';position:absolute;left:0;right:0;bottom:0;height:13px;background:repeating-linear-gradient(45deg,transparent 0 10px,#c9a36a35 10px 11px,transparent 11px 20px);border-block:1px solid #c9a36a55;pointer-events:none}.farewell{position:relative}.farewell:before{top:0;bottom:auto}.lamp-glow{position:absolute;top:66%;width:13%;height:20%;background:radial-gradient(ellipse,#ffd79f45,transparent 67%);filter:blur(13px);opacity:0;transition:opacity 1.5s;pointer-events:none}.lamp-glow.left{left:8%}.lamp-glow.right{right:8%}#gold-dust{position:fixed;inset:0;width:100%;height:100%;z-index:22;pointer-events:none;opacity:.7}.portrait-title strong{transition:transform .5s}.portrait:hover .portrait-title strong,.portrait.active .portrait-title strong{transform:translateY(-4px)}.portrait.active{outline:1px solid #bd904f;outline-offset:5px}.map-placeholder svg path{stroke-dasharray:7;animation:route 10s linear infinite}@keyframes frame-draw{to{stroke-dashoffset:0}}@keyframes sweep{to{transform:translateX(90%)}}@keyframes title-focus{from{opacity:0;filter:blur(6px);transform:translateY(12px)}to{opacity:1;filter:blur(0);transform:none}}@keyframes chapter-turn{0%{opacity:.3;transform:perspective(800px) rotateY(12deg) rotate(-4deg)}100%{opacity:1;transform:perspective(800px) rotateY(0deg) rotate(-4deg)}}@keyframes route{to{stroke-dashoffset:-100}}@media(prefers-reduced-motion:reduce){.forming-frame path{stroke-dashoffset:0}#gold-dust{display:none}.lamp-glow{opacity:.35!important}.opening-content{opacity:1;filter:none}}body.motion-off #gold-dust{display:none}body.motion-off .forming-frame path{stroke-dashoffset:0}@media(max-width:800px){.forming-frame{inset:15px;width:calc(100% - 30px);height:calc(100% - 30px)}.lamp-glow{top:64%;width:20%}.lamp-glow.left{left:3%}.lamp-glow.right{right:3%}.story-thread{margin-top:35px;margin-bottom:-18px}}

.english{font-family:Georgia,serif;line-height:1.65}.opening-content h2.english{font-size:30px}.invite-card .english{font-size:17px}.portrait-title .english{display:block;color:#8d593a;font-size:18px}.event-card h3{font-size:23px;margin-bottom:26px}@media(max-width:800px){.opening-content h2.english{font-size:25px}.invite-card .english{font-size:16px}.chapter-copy h3{font-size:32px}.event-card h3{font-size:20px}}
