:root{--ink:#3c2e28;--ink-night:#f4e9d3;--ivory:#fbf5e9;--ivory-dark:#f3e9d2;--gold:#c89a50;--gold-gradient:linear-gradient(110deg, #a97c36 0%, #c89a50 25%, #f4e2b4 50%, #c89a50 75%, #a97c36 100%);--gold-gradient-deep:linear-gradient(110deg, #4e3108 0%, #71490f 25%, #9c6b22 50%, #71490f 75%, #4e3108 100%);--gold-antique-1:#eedfae;--gold-antique-2:#d9be7a;--gold-antique-3:#a98c4e;--gold-deep-1:#9c6b22;--gold-deep-2:#71490f;--gold-deep-3:#4e3108;--night-bg:#4a0a10;--night-bg-deep:#3d080c;--reception-sub:#4e5670;--font-script:"Pinyon Script", cursive;--font-display:"EB Garamond", serif;--font-body-reading:"Lora", serif;--font-sans:"Mulish", sans-serif;--font-devanagari:"Tillana", serif;--shadow-soft:0 10px 30px #3d080c1f;--shadow-strong:0 20px 60px #3d080c40;--nav-height:72px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{scroll-behavior:auto}body{background:var(--ivory);color:var(--ink);font-family:var(--font-body-reading);margin:0;font-size:18px;line-height:1.6;overflow-x:hidden}@media (width>=768px){body{font-size:19px}}@media (width>=1280px){body{font-size:20px}}#root{min-height:100svh;overflow-x:clip}h1,h2,h3,h4{font-family:var(--font-display);color:var(--ink);margin:0;font-weight:600}p{margin:0}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}img{max-width:100%;display:block}::selection{background:var(--gold);color:var(--ink)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}.container{width:100%;max-width:1140px;margin:0 auto;padding:0 24px}.eyebrow{font-family:var(--font-sans);letter-spacing:.32em;text-transform:uppercase;color:var(--gold-deep-2);text-align:center;font-size:.72rem;font-weight:600}.section-title{font-family:var(--font-display);letter-spacing:-.015em;color:var(--ink);text-align:center;font-size:clamp(2.8rem,7vw,4.8rem);font-weight:600;line-height:1.02}.section-sub{font-family:var(--font-display);color:var(--ink);opacity:.75;text-align:center;max-width:46ch;margin:10px auto 0;font-size:1.15rem;font-style:italic}.gold-rule{background:linear-gradient(90deg, transparent, var(--gold) 20%, var(--gold-antique-1) 50%, var(--gold) 80%, transparent);width:90px;height:2px;margin:18px auto}.pill-badge{background:var(--gold-gradient);color:var(--ink);font-family:var(--font-display);letter-spacing:.03em;box-shadow:0 4px 14px color-mix(in srgb, var(--gold) 35%, transparent);background-position:0%;background-size:220% 100%;border-radius:999px;align-items:center;gap:8px;padding:8px 22px;font-size:1.05rem;font-weight:700;transition:background-position .8s;display:inline-flex}.pill-badge:hover{background-position:100%}@media (prefers-reduced-motion:reduce){.pill-badge{background-position:0%;transition:none}}.btn{border:1px solid var(--gold);color:var(--ink);font-family:var(--font-sans);letter-spacing:.06em;background:0 0;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:12px 30px;font-size:1.05rem;font-weight:600;transition:background .25s,color .25s,transform .25s;display:inline-flex;position:relative;overflow:hidden}.btn:after{content:"";pointer-events:none;background:linear-gradient(115deg,#0000,#fff6d78c,#0000);width:60%;position:absolute;inset:0;transform:translate(-160%)}.btn:hover:after{transition:transform .8s;transform:translate(220%)}.btn:hover{background:var(--gold);color:var(--ink);transform:translateY(-2px)}.btn-solid{background:var(--night-bg);color:var(--ivory);border-color:var(--night-bg)}.btn-solid:hover{background:var(--night-bg-deep);color:var(--gold-antique-1)}@media (prefers-reduced-motion:reduce){.btn:after{display:none}}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{background:var(--night-bg);color:var(--ivory);z-index:1000;border-radius:6px;padding:10px 16px;transition:top .2s;position:absolute;top:-60px;left:12px}.skip-link:focus{top:12px}.grain{z-index:3000;pointer-events:none;opacity:.045;mix-blend-mode:overlay;background-repeat:repeat;background-size:180px 180px;position:fixed;inset:0}.custom-cursor{background:var(--gold);width:10px;height:10px;box-shadow:0 0 6px 1px color-mix(in srgb, var(--gold) 55%, transparent);pointer-events:none;z-index:4000;will-change:transform;border-radius:50%;transition:width .2s,height .2s,background .2s,box-shadow .2s,opacity .2s;position:fixed;top:0;left:0}.custom-cursor--active{background:var(--gold-antique-1);width:18px;height:18px;box-shadow:0 0 10px 2px #e8c96aa6}body.has-custom-cursor,body.has-custom-cursor a,body.has-custom-cursor button,body.has-custom-cursor [role=button],body.has-custom-cursor label{cursor:none}body.has-custom-cursor input,body.has-custom-cursor textarea,body.has-custom-cursor select{cursor:auto}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}::view-transition-old(root){animation-duration:.4s}::view-transition-new(root){animation-duration:.4s}.paisley-divider{justify-content:center;align-items:center;gap:14px;max-width:320px;margin:28px auto;display:flex}.paisley-divider__line{background:linear-gradient(90deg, transparent, var(--gold), transparent);flex:1;height:1px}.paisley-divider__glyph{flex-shrink:0}.paisley-divider__glyph--flip{transform:scaleX(-1)rotate(3deg)scale(.96)}.nav{z-index:200;height:var(--nav-height);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid color-mix(in srgb, var(--gold) 25%, transparent);background:#fbf5e9e6;justify-content:center;align-items:center;transition:transform .4s,background .4s,border-color .4s;display:flex;position:fixed;top:0;left:0;right:0;transform:translateY(-100%)}.nav--visible{transform:translateY(0)}.nav--hero{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom-color:#0000}.nav--hero .nav__brand-group,.nav--hero .nav__links{display:none}.nav--hero .nav__inner{justify-content:flex-end;max-width:none}.nav--hero .nav__toggle{background:color-mix(in srgb, var(--ivory) 90%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid color-mix(in srgb, var(--gold) 30%, transparent);width:44px;height:44px;box-shadow:var(--shadow-soft);color:var(--ink);border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex}.nav--hero .nav__mobile-menu{display:flex}.nav--hero.nav--menu-open{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom-color:color-mix(in srgb, var(--gold) 25%, transparent);background:#fbf5e9e6}@keyframes nav-content-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:no-preference){.nav--visible .nav__brand-group,.nav--visible .nav__links{animation:.4s both nav-content-in}}.nav__inner{justify-content:space-between;align-items:center;width:100%;max-width:1140px;padding:0 24px;display:flex}.nav__brand-group{flex-wrap:wrap;align-items:baseline;gap:14px;display:flex}.nav__brand{font-family:var(--font-script);color:var(--ink);font-size:1.5rem}@media (width<=560px){.nav__brand-group{flex-direction:column;align-items:flex-start;gap:2px}}.nav__links{gap:28px;margin:0;padding:0;list-style:none;display:flex}.nav__link{font-family:var(--font-sans);color:var(--ink);padding:4px 2px;font-size:1.05rem;font-weight:600;position:relative}.nav__link:after{content:"";background:var(--gold);width:0;height:1.5px;transition:width .25s;position:absolute;bottom:-2px;left:0}.nav__link:hover:after{width:100%}.nav__link--active{color:var(--ink);font-weight:600}.nav__link--active:after{display:none}.nav__roll{vertical-align:bottom;height:1.4em;line-height:1.4;display:inline-block;overflow:hidden}.nav__roll-inner{flex-direction:column;transition:transform .35s cubic-bezier(.22,1,.36,1);display:flex;transform:translateY(0)}.nav__link:hover .nav__roll-inner{transform:translateY(-1.4em)}@media (prefers-reduced-motion:reduce){.nav__roll-inner{transition:none}.nav__link:hover .nav__roll-inner{transform:translateY(0)}}.nav__active-underline{background:linear-gradient(90deg, var(--gold), var(--gold-antique-1));border-radius:2px;height:2px;position:absolute;bottom:-2px;left:0;right:0}.nav__toggle{color:var(--ink);background:0 0;border:none;padding:8px;font-size:1.2rem;line-height:1;display:none}.nav__mobile-menu{top:var(--nav-height);background:var(--ivory);border-bottom:1px solid color-mix(in srgb, var(--gold) 25%, transparent);flex-direction:column;align-items:center;margin:0;padding:0;list-style:none;display:none;position:absolute;left:0;right:0;overflow:hidden}.nav__mobile-menu li{padding:10px 0}.nav__mobile-menu li:first-child{padding-top:20px}.nav__mobile-menu li:last-child{padding-bottom:22px}@media (width<=720px){.nav__links{display:none}.nav__toggle{display:block}.nav__mobile-menu{display:flex}}.hero{min-height:100svh;padding:calc(var(--nav-height) + 24px) 0 60px;background-image:-webkit-image-set(url(/images/hero-plate-mobile.webp) 1x);background-image:image-set("/images/hero-plate-mobile.webp" 1x);background-position:50%;background-size:cover;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}@media (width>=900px){.hero{background-image:-webkit-image-set(url(/images/hero-plate-desktop.webp) 1x);background-image:image-set("/images/hero-plate-desktop.webp" 1x);background-position:50% 30%}}.petal-field{pointer-events:none;position:absolute;inset:0;overflow:hidden}.petal-field__petal{position:absolute;top:0}@media (width<=899px){.hero:before{content:"";z-index:0;pointer-events:none;background:linear-gradient(#0000 0% 46%,#fbf5e96b 58%,#fbf5e99e 74%,#fbf5e94d 100%);position:absolute;inset:0}}.hero__content{z-index:1;text-align:center;flex-direction:column;align-items:center;display:flex;position:relative}.hero__intro{margin-bottom:20px}.hero__eyebrow{max-width:60%;margin:0 auto 6px;font-size:.75rem}.hero__names{font-family:var(--font-script);color:var(--ink);flex-direction:column;align-items:center;font-size:clamp(2.8rem,13.5cqw,5.5rem);font-weight:400;line-height:1.15;display:flex}.hero__names .hero__amp{margin-block:-.12em}@media (width>=768px){.hero__names{white-space:nowrap;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:baseline;column-gap:.26em;width:100%;font-size:min(5.5rem,10.2vw);display:grid}.hero__intro{width:100%}.hero__name--groom{justify-self:end}.hero__name--bride{justify-self:start}.hero__names .hero__amp{margin-block:0}}.hero__amp{background:var(--gold-gradient-deep);color:#0000;background-position:0%;background-size:220% 100%;-webkit-background-clip:text;background-clip:text;animation:6s ease-in-out infinite alternate amp-shimmer}@keyframes amp-shimmer{0%{background-position:0%}to{background-position:100%}}@media (prefers-reduced-motion:reduce){.hero__amp{background-position:30%;animation:none}}.hero__badge-wrap{flex-direction:column;align-items:center;gap:8px;margin:14px 0 4px;display:flex}.hero__hashtag-explainer{font-family:var(--font-display);color:var(--ink);opacity:.7;font-size:.92rem;font-style:italic}.hero__hashtag-hint{font-family:var(--font-display);letter-spacing:.06em;color:var(--ink);opacity:.5;margin-top:-2px;font-size:.72rem;font-style:italic}.pill-badge--button{animation:3.2s ease-in-out infinite badge-beckon}@keyframes badge-beckon{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--gold) 45%, transparent)}45%{box-shadow:0 0 0 9px color-mix(in srgb, var(--gold) 0%, transparent)}}@media (prefers-reduced-motion:reduce){.pill-badge--button{animation:none}}.hero__dates{font-family:var(--font-display);color:var(--ink);font-size:1.1rem}.hero__dates-line{display:block}.hero__dates-line+.hero__dates-line{margin-top:4px}.section-sub-line{display:block}.countdown{z-index:1;gap:14px;margin-top:34px;display:flex;position:relative}.countdown__card{background:linear-gradient(155deg, var(--night-bg) 0%, var(--night-bg-deep) 100%);border:1px solid var(--gold);width:68px;height:68px;box-shadow:var(--shadow-soft);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;display:flex}.countdown__number{font-family:var(--font-display);color:var(--gold-antique-1);font-size:1.5rem;font-weight:700;line-height:1}.countdown__label{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--ivory);opacity:.8;margin-top:4px;font-size:.7rem}@media (width<=480px){.countdown{gap:8px}.countdown__card{width:58px;height:58px}.countdown__number{font-size:1.2rem}}.hero__celebration{z-index:1;text-align:center;margin-top:34px;position:relative}.hero__celebration-title{font-family:var(--font-display);color:var(--ink);font-size:1.8rem;font-weight:700}.hero__celebration-sub{font-family:var(--font-script);color:var(--gold-deep-2);margin-top:6px;font-size:1.4rem}@media (width<=480px){.hero__celebration-title{font-size:1.4rem}.hero__celebration-sub{font-size:1.15rem}}.hero__scroll-cue{z-index:50;width:max-content;color:var(--gold-deep-2);flex-direction:column;align-items:center;gap:7px;margin:0 auto;text-decoration:none;transition:opacity .4s;display:flex;position:fixed;bottom:18px;left:0;right:0}.hero__scroll-cue--hidden{opacity:0;pointer-events:none}.hero__scroll-cue-label{font-family:var(--font-display);letter-spacing:.32em;text-transform:uppercase;color:var(--ink);opacity:.7;font-size:.66rem}.hero__scroll-cue svg{display:block}.main{counter-reset:section}.section{counter-increment:section;padding:clamp(96px,12vh,150px) 0;position:relative}.section>.container{z-index:1;position:relative}.section:before{content:counter(section, decimal-leading-zero);font-family:var(--font-display);color:var(--gold);opacity:.1;z-index:0;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:clamp(6rem,11vw,11rem);font-weight:600;line-height:1;position:absolute;top:.4em;right:clamp(16px,5vw,64px)}@media (width<=640px){.section:before{opacity:.08;font-size:clamp(3.5rem,16vw,5rem);top:.2em;right:16px}}.section--alt{background:var(--ivory-dark)}.events__stay-note{font-family:var(--font-script);color:var(--gold-deep-2);margin-top:4px;font-size:1.3rem}.events__public-note{font-family:var(--font-sans);letter-spacing:.02em;color:var(--gold-deep-2);text-align:center;max-width:40ch;margin:12px auto 0;font-size:.82rem}.families{--seam-into:#f3f0e1;--seam-image:url(/images/band-ground-pale.webp);padding-top:clamp(56px,8vh,96px);padding-bottom:clamp(56px,8vh,96px)}.families__row{flex-wrap:wrap;justify-content:center;align-items:center;gap:18px 32px;margin-top:22px;display:flex}.families__block{text-align:center}.families__role{font-family:var(--font-sans);letter-spacing:.26em;text-transform:uppercase;color:var(--gold-deep-2);margin-bottom:6px;font-size:.7rem;display:block}.families__names{font-family:var(--font-display);color:var(--ink);font-size:1.15rem;font-style:italic;display:block}.families__amp{font-family:var(--font-script);color:var(--gold);font-size:1.8rem}@media (width<=560px){.families__row{flex-direction:column}}.events-band{counter-increment:none;background-position:100% 100%;background-repeat:no-repeat;background-size:cover}.events-band:before{content:none}#events,.events-band--reception{counter-increment:section}#events:before,.events-band--reception:before{content:counter(section, decimal-leading-zero)}.events-band--pale{background-blend-mode:multiply;color:var(--ink);background-image:url(/images/band-ground-pale.webp)}.events-band--dark{color:var(--ink-night);background-image:url(/images/band-ground-dark.webp);background-color:var(--night-bg)}.events-band--dark:before{color:var(--gold-antique-1);opacity:.14}.events-band--dark .eyebrow{color:var(--gold-antique-1)}.events-band--dark .section-sub{color:var(--ink-night);opacity:.85}.events-band--mehendi{background-color:#f3f0e1}.events-band--haldi-baraat{background-color:#f7efe0}.events-band--reception{background-color:#f0e4ca}.events-band--wedding{background-color:var(--night-bg-deep);padding-top:clamp(140px,18vh,210px);padding-bottom:clamp(140px,18vh,210px)}.events-band--wedding .events__grid{max-width:480px;margin:0 auto}.events-band--wedding .event-card{padding:40px 32px}.events-band--wedding .event-card__name{font-size:1.7rem}.events__grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:24px;display:grid}.events__grid:not(:first-child){margin-top:32px}.events__grid--single{grid-template-columns:minmax(260px,420px);justify-content:center}.event-card{background:var(--ivory);border:1px solid color-mix(in srgb, var(--gold) 35%, transparent);text-align:center;box-shadow:var(--shadow-soft);border-radius:14px;padding:28px 22px;transition:transform .3s,box-shadow .3s;position:relative}.event-card:hover{box-shadow:var(--shadow-strong);transform:translateY(-6px)}.event-card__invite-marker{z-index:2;background:var(--gold);color:var(--ink);font-family:var(--font-display);letter-spacing:.02em;white-space:nowrap;box-shadow:var(--shadow-soft);border-radius:3px 10px;padding:5px 12px;font-size:.72rem;font-style:italic;font-weight:500;position:absolute;top:0;right:18px;transform:rotate(-4deg)}.event-card__icon{color:var(--ink);margin:0 auto 14px}.event-card__name{color:var(--ink);margin-bottom:8px;font-size:1.35rem}.event-card__devanagari{font-family:var(--font-devanagari);opacity:.85;margin-left:.4em;font-size:1.1rem}.event-card__datetime{font-family:var(--font-display);color:var(--ink);opacity:.85;font-size:.98rem}.event-card__venue{font-family:var(--font-display);color:var(--gold-deep-2);margin-top:4px;font-size:.92rem;font-style:italic}.event-card__note{opacity:.66;margin-top:6px;font-size:.84rem}.event-card__dress{opacity:.7;margin-top:10px;font-size:.85rem}.event-card__actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:18px;display:flex}.event-card__action{font-size:.82rem;font-family:var(--font-display);color:var(--ink);border:1px solid var(--gold);border-radius:999px;padding:6px 14px;transition:background .2s,color .2s}.event-card__action:hover{background:var(--gold);color:var(--ink)}button.event-card__action{line-height:inherit;background:0 0}.event-card--mehendi .event-card__icon{color:#5e8c4b}.event-card--haldi .event-card__icon{color:#a97c36}.event-card--baraat .event-card__icon{color:#c97a1e}.event-card--reception .event-card__icon{color:#b08d3a}.events-band--dark .event-card{border-color:color-mix(in srgb, var(--gold) 40%, transparent);color:var(--ink-night);box-shadow:none;background:#fbf5e90d}.events-band--dark .event-card:hover{box-shadow:0 20px 60px #00000059}.events-band--dark .event-card__datetime{color:color-mix(in srgb, var(--ink-night) 75%, transparent)}.events-band--dark .event-card__note{color:color-mix(in srgb, var(--ink-night) 70%, transparent);opacity:1}.events-band--dark .event-card__dress{color:color-mix(in srgb, var(--ink-night) 75%, transparent);opacity:1}.events-band--dark .event-card__action{color:var(--gold-antique-1);border-color:var(--gold-antique-1)}.events-band--dark .event-card__action:hover{background:var(--gold-antique-1);color:var(--ink)}.event-card--sangeet .event-card__icon,.event-card--sangeet .event-card__name,.event-card--wedding .event-card__icon,.event-card--wedding .event-card__name{color:#e8c96a}.event-card--sangeet .event-card__venue,.event-card--wedding .event-card__venue{color:var(--gold-antique-1)}.events-band--dark .paisley-divider__line{background:linear-gradient(90deg, transparent, var(--gold-antique-1), transparent)}.events-band:after,.travel--seam-to-reception:after,.families:after{content:"";pointer-events:none;z-index:0;opacity:.93;background:var(--seam-into,transparent) var(--seam-image,none) center / cover no-repeat;background-blend-mode:var(--seam-blend,multiply);clip-path:polygon(0% 30%,6% 18%,14% 34%,22% 12%,31% 28%,40% 10%,49% 26%,58% 8%,67% 24%,76% 14%,85% 30%,93% 16%,100% 26%,100% 100%,0% 100%);filter:blur(14px);height:clamp(76px,10vh,124px);position:absolute;bottom:-28px;left:0;right:0}.events-band--reception:after{background:var(--ivory)}.photos__share{text-align:center;margin-top:26px}.photos__share-line{font-family:var(--font-script);color:var(--ink);margin-bottom:10px;font-size:1.5rem}.photos__note{font-family:var(--font-display);color:var(--ink);opacity:.78;margin:0 0 18px;font-size:1.02rem;font-style:italic}.photos__albums{flex-wrap:wrap;justify-content:center;gap:14px;display:flex}.travel__stay{background:var(--ivory);border:1px solid var(--gold);text-align:center;max-width:640px;box-shadow:var(--shadow-soft);border-radius:14px;margin:40px auto 0;padding:24px 28px}.travel__stay-title{font-family:var(--font-display);color:var(--ink);margin-bottom:8px;font-size:1.4rem}.travel__stay-detail{font-family:var(--font-body-reading);opacity:.9;font-size:.98rem;line-height:1.65}.travel__panel{gap:26px;max-width:760px;margin:40px auto 0;display:grid}.travel__block{background:var(--ivory);border:1px solid color-mix(in srgb, var(--gold) 30%, transparent);border-radius:14px;padding:26px 28px}.travel__block h3{margin-bottom:10px;font-size:1.3rem}.travel__block p{opacity:.9;font-size:.98rem;line-height:1.65}.things-to-do__city{text-align:center;max-width:900px;margin:48px auto 0}.things-to-do__city:first-of-type{margin-top:40px}.things-to-do__city h3{font-size:1.6rem}.things-to-do__city .section-sub{max-width:560px;margin:10px auto 0}.map-container{box-shadow:var(--shadow-soft);border-radius:14px;margin-top:28px;position:relative}.map-container__plate{border-radius:inherit;background-color:var(--ivory-dark);z-index:0;background-repeat:no-repeat;position:absolute;inset:0;overflow:hidden}.map-container--lonavala .map-container__plate{background-image:url(/images/thingstodo-map-lonavala.webp)}.map-container--bhubaneswar .map-container__plate{background-image:url(/images/thingstodo-map-bhubaneswar.webp)}@media (width>=768px){.map-container{aspect-ratio:3/2}.map-container__plate{background-position:50%;background-size:100% 100%}}@media (width<=767px){.things-to-do__city{--ttd-map-h:min(calc((100vw - 48px) / 1.5), 260px, 32svh)}.map-container{top:calc(var(--nav-height) + 12px);z-index:5;height:var(--ttd-map-h);aspect-ratio:3/2;margin:28px auto 0;position:sticky}.map-container:before{content:"";background:linear-gradient(to bottom, var(--ivory) calc(100% - 16px), transparent);z-index:-1;pointer-events:none;width:100vw;position:absolute;top:-12px;bottom:-28px;left:50%;transform:translate(-50%)}.map-container__plate{background-position:50%;background-size:100% 100%}.ttd-item-list>li{scroll-margin-top:calc(var(--nav-height) + 12px + var(--ttd-map-h) + 28px)}}.map-pin-wrap{z-index:1;position:absolute;transform:translate(-50%,-15px)}.map-pin{background:0 0;border:none;flex-direction:column;align-items:center;gap:4px;padding:0;display:flex}.map-pin__disc{background:var(--gold-gradient);width:30px;height:30px;box-shadow:var(--shadow-soft);border-radius:50%;padding:3px}.map-pin__disc-inner{background:var(--ivory);border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.map-pin__icon{color:var(--gold-deep-2)}.map-pin__label{font-family:var(--font-sans);letter-spacing:.01em;text-transform:none;color:var(--ink);white-space:nowrap;background:color-mix(in srgb, var(--ivory) 94%, transparent);box-shadow:var(--shadow-soft);border-radius:999px;padding:3px 10px;font-size:.72rem;font-weight:600}.map-pin--drop{position:relative}.map-pin--drop .map-pin__label{position:absolute;top:calc(100% + 4px)}.map-pin--label-center .map-pin__label{left:50%;transform:translate(-50%)}.map-pin--label-start .map-pin__label{left:0}.map-pin--label-end .map-pin__label{right:0}.map-pin--label-above .map-pin__label{top:auto;bottom:calc(100% + 4px)}.map-popup{z-index:2;background:var(--ivory);border:1px solid color-mix(in srgb, var(--gold) 30%, transparent);width:240px;box-shadow:var(--shadow-strong);border-radius:12px;padding:16px 18px;position:absolute}.map-popup__category{font-family:var(--font-sans);letter-spacing:.28em;text-transform:uppercase;color:var(--gold-deep-2);margin-bottom:4px;font-size:.62rem;font-weight:600}.map-popup__name{font-family:var(--font-display);color:var(--ink);margin-bottom:6px;font-size:1.05rem;font-weight:600;line-height:1.15}.map-popup__note{font-family:var(--font-body-reading);color:var(--ink);opacity:.85;font-size:.88rem;line-height:1.5}.map-popup__action{font-family:var(--font-display);color:var(--ink);border:1px solid var(--gold);border-radius:999px;margin-top:12px;padding:6px 14px;font-size:.82rem;display:inline-block}.map-popup__action:hover{background:var(--gold);color:var(--ink)}.map-fullscreen-btn{z-index:2;background:color-mix(in srgb, var(--ivory) 90%, transparent);border:1px solid color-mix(in srgb, var(--gold) 30%, transparent);width:36px;height:36px;box-shadow:var(--shadow-soft);color:var(--gold-deep-2);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:absolute;top:12px;right:12px}.map-fullscreen{z-index:500;position:fixed;inset:0}.map-fullscreen--closing{pointer-events:none}.map-fullscreen__backdrop{background:var(--ivory);position:absolute;inset:0}.map-fullscreen__scroller{overscroll-behavior:contain;padding:24px;display:grid;position:absolute;inset:0;overflow:auto}.map-fullscreen__plate{box-shadow:var(--shadow-soft);margin:auto;position:relative}.map-fullscreen__plate .map-container__plate{background-position:50%;background-size:100% 100%}.map-fullscreen__plate--lonavala .map-container__plate{background-image:url(/images/thingstodo-map-lonavala-full.jpg),url(/images/thingstodo-map-lonavala.webp)}.map-fullscreen__plate--bhubaneswar .map-container__plate{background-image:url(/images/thingstodo-map-bhubaneswar-full.jpg),url(/images/thingstodo-map-bhubaneswar.webp)}.things-to-do__list{text-align:left;gap:18px;margin-top:28px;display:grid}.ttd-accordion__item{background:var(--ivory);border:1px solid color-mix(in srgb, var(--gold) 30%, transparent);border-radius:14px;overflow:hidden}.ttd-accordion__heading{font:inherit;margin:0}.ttd-accordion__row{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:12px;padding:20px 22px;display:flex}.ttd-accordion__row:focus-visible{outline-offset:-4px;border-radius:12px}.ttd-accordion__label{font-family:var(--font-display);color:var(--ink);flex:1;align-items:center;gap:10px;font-size:1.1rem;font-weight:600;transition:color .2s;display:flex}.ttd-accordion__row:hover .ttd-accordion__label{color:var(--gold-deep-2)}.ttd-accordion__icon,.ttd-accordion__chevron{color:var(--gold-deep-2);flex-shrink:0}.ttd-accordion__panel{overflow:hidden}.ttd-item-list{gap:2px;margin:0;padding:0 10px 14px;list-style:none;display:grid}.ttd-item-row{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;gap:3px;width:100%;padding:12px 12px 12px 16px;transition:background-color .15s ease-out;display:grid;position:relative}.ttd-item-row--selected{background:color-mix(in srgb, var(--gold) 10%, var(--ivory))}.ttd-item-row--selected:before{content:"";background:var(--gold-gradient-deep);border-radius:2px;width:3px;position:absolute;top:10px;bottom:10px;left:4px}.ttd-item-row__name{font-family:var(--font-display);color:var(--ink);font-size:.98rem;font-weight:600}.ttd-item-row__note{font-family:var(--font-body-reading);color:var(--ink);opacity:.85;font-size:.88rem;line-height:1.5}.ttd-item-row__directions{margin:2px 12px 10px 16px;padding:5px 12px;font-size:.78rem}.rsvp{background:linear-gradient(180deg, var(--night-bg) 0%, var(--night-bg-deep) 100%);color:var(--ink-night)}.rsvp .eyebrow{color:var(--gold-antique-1)}.rsvp .section-title,.rsvp .section-title .st-word{background:var(--gold-gradient);color:#0000;-webkit-background-clip:text;background-clip:text}.rsvp .section-sub{color:var(--ink-night);opacity:.85}.rsvp__card{background:var(--ivory);border:1.5px solid var(--gold);max-width:620px;box-shadow:var(--shadow-strong);color:var(--ink);border-radius:16px;margin:46px auto 0;padding:40px 34px}.rsvp__greeting{font-family:var(--font-display);color:var(--ink);margin-bottom:24px}.rsvp__field{text-align:left;margin-bottom:20px}.rsvp__label{font-family:var(--font-sans);color:var(--ink);margin-bottom:6px;font-weight:600;display:block}.rsvp__input,.rsvp__select,.rsvp__textarea{background:var(--ivory);width:100%;font-family:var(--font-body-reading);color:var(--ink);border:1px solid #5c0e1440;border-radius:8px;padding:11px 14px;font-size:1rem}.rsvp__textarea{resize:vertical;min-height:90px}.rsvp__checkbox-group{flex-wrap:wrap;gap:10px;display:flex}.rsvp__checkbox{background:var(--ivory-dark);border-radius:8px;align-items:center;gap:6px;padding:8px 12px;font-size:.92rem;display:flex}.rsvp__radio-group{flex-wrap:wrap;gap:14px;display:flex}.rsvp__radio{align-items:center;gap:6px;font-size:.95rem;display:flex}.rsvp__error{color:var(--ink);margin-top:4px;font-size:.82rem}.rsvp__error--alert{border-left:2px solid var(--gold-deep-2);padding-left:10px;font-weight:600}.rsvp__submit,.rsvp__submit-wrap{width:100%;margin-top:6px}.rsvp__submit-wrap .rsvp__submit{margin-top:0}.rsvp__switch-code{font-family:var(--font-body-reading);color:var(--ink);cursor:pointer;background:0 0;border:none;margin:18px auto 0;font-size:.85rem;text-decoration:underline;display:block}.rsvp__candidates{flex-wrap:wrap;gap:10px;margin-top:6px;display:flex}.rsvp__candidate{background:var(--ivory-dark);font-family:var(--font-body-reading);color:var(--ink);cursor:pointer;border:none;border-radius:8px;padding:8px 12px;font-size:.92rem;transition:opacity .2s}.rsvp__candidate:hover{opacity:.75}.rsvp__toast{background:var(--ivory-dark);color:var(--ink);font-family:var(--font-display);text-align:center;border-radius:8px;margin-top:16px;padding:12px 16px}.rsvp__success{text-align:center;padding:20px 0}.rsvp__success-title{margin:14px 0 8px;font-size:1.8rem}.rsvp__success-text{opacity:.85}.footer{background:var(--night-bg-deep);color:var(--ink-night);text-align:center;padding:60px 24px 40px}.footer__garland{width:120px;height:auto;margin:0 auto 18px;display:block}.footer__names{font-family:var(--font-script);color:var(--gold-antique-1);font-size:2.2rem}.footer__cities{font-family:var(--font-display);opacity:.85;margin-top:10px}.footer__crafted{opacity:.6;font-size:.85rem;font-family:var(--font-display);margin-top:24px;font-style:italic}.music-toggle{z-index:150;background:linear-gradient(155deg, var(--gold-antique-1), var(--gold));width:52px;height:52px;box-shadow:var(--shadow-soft);color:var(--ink);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;bottom:24px;right:24px}.music-toggle:hover{transform:translateY(-2px)}@media (width<=480px){.music-toggle{width:46px;height:46px;bottom:16px;right:16px}}.scroll-progress{z-index:300;background:linear-gradient(90deg, var(--gold), var(--gold-antique-1), var(--gold));transform-origin:0;pointer-events:none;height:3px;position:fixed;top:0;left:0;right:0;transform:scaleX(0)}.countdown__number{font-variant-numeric:tabular-nums;display:inline-flex}.countdown__digit-slot{text-align:center;width:1ch;height:1em;line-height:1;display:inline-block;position:relative;overflow:hidden}.countdown__digit{will-change:transform, opacity;display:inline-block}.pill-badge--button{cursor:pointer;font:inherit;font-family:var(--font-display);border:none;font-size:1.05rem;font-weight:700}.petal-shower{z-index:400;pointer-events:none;position:fixed;inset:0;overflow:hidden}.petal-shower__petal{position:absolute;top:0}.magnetic{display:inline-block}.footer__share{border:1px solid var(--gold);color:var(--gold-antique-1);font-family:var(--font-display);letter-spacing:.03em;background:0 0;border-radius:999px;margin-top:22px;padding:9px 28px;font-size:.98rem;transition:background .25s,color .25s}.footer__share:hover{background:var(--gold);color:var(--ink)}.contact__cards{flex-wrap:wrap;justify-content:center;gap:20px;max-width:720px;margin:44px auto 0;display:flex}.contact__cards>div{flex:280px;max-width:480px}.contact__or{justify-content:center;align-items:center;gap:14px;max-width:220px;margin:36px auto 0;display:flex}.contact__or-line{background:linear-gradient(90deg, transparent, var(--gold), transparent);flex:1;height:1px}.contact__or-label{font-family:var(--font-display);letter-spacing:.04em;color:var(--gold-deep-2);flex-shrink:0;font-size:.95rem;font-style:italic}.contact__form{text-align:left;max-width:520px;margin:20px auto 0}.contact__form--collapsed{text-align:center;justify-content:center;display:flex}.contact__reveal{min-width:220px}.contact__form-lead{font-family:var(--font-display);color:var(--ink);opacity:.78;text-align:center;margin-bottom:22px;font-size:1.02rem;font-style:italic}.contact__form-note{font-family:var(--font-display);color:var(--ink);opacity:.82;text-align:center;margin-top:14px;font-size:.9rem}.contact-card{background:var(--ivory);border:1px solid var(--gold);width:100%;box-shadow:var(--shadow-soft);border-radius:14px;align-items:center;gap:16px;padding:20px 28px;transition:transform .25s,box-shadow .25s;display:flex}a.contact-card:hover{box-shadow:var(--shadow-strong);transform:translateY(-3px)}.contact-card__icon{background:linear-gradient(155deg, var(--night-bg) 0%, var(--night-bg-deep) 100%);width:48px;height:48px;color:var(--gold-antique-1);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.contact-card__text{text-align:left;flex-direction:column;display:flex}.contact-card__label{font-family:var(--font-display);color:var(--gold-deep-2);font-size:.88rem;font-style:italic}.contact-card__value{font-family:var(--font-display);color:var(--ink);word-break:break-word;font-size:1.08rem;font-weight:600}.marquee{background:var(--ivory-dark);border-top:1px solid color-mix(in srgb, var(--gold) 25%, transparent);border-bottom:1px solid color-mix(in srgb, var(--gold) 25%, transparent);padding:20px 0;overflow:hidden}.marquee__inner{width:max-content;animation:32s linear infinite marquee-scroll;display:flex}.marquee__track{flex-shrink:0;align-items:center;display:flex}.marquee__item{white-space:nowrap;font-family:var(--font-display);letter-spacing:.04em;color:var(--ink);align-items:center;gap:.6em;padding:0 .6em;font-size:clamp(1.1rem,2.2vw,1.5rem);display:inline-flex}.marquee__tag{color:var(--gold-deep-2);font-weight:600}.marquee__flourish{font-family:var(--font-script);color:var(--ink);font-size:1.2em}.marquee__glyph{color:var(--gold);opacity:.8}@keyframes marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.marquee__inner{animation:none}.marquee__track:last-child{display:none}}.faq{background:var(--ivory-dark);color:var(--ink)}.faq__list{gap:18px;max-width:720px;margin:40px auto 0;display:grid}.faq__item{background:var(--ivory);border:1px solid color-mix(in srgb, var(--gold) 30%, transparent);text-align:left;border-radius:14px;padding:0;overflow:hidden}.faq__question-heading{margin:0}.faq__question-row{text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:26px 28px;display:flex}.faq__question{font-family:var(--font-display);color:var(--ink);text-align:left;font-size:clamp(1.05rem,2.4vw,1.2rem);font-weight:600;transition:color .2s}.faq__question-row:focus-visible{outline-offset:-4px;border-radius:12px}.faq__question-row:hover .faq__question{color:var(--gold-deep-2)}.faq__chevron{color:var(--gold-deep-2);flex-shrink:0}.faq__answer-panel{overflow:hidden}.faq__answer{font-family:var(--font-body-reading);color:var(--ink);opacity:.85;padding:0 28px 26px;font-size:.98rem;line-height:1.65}.hero__welcome{margin-top:28px}.hero__welcome-eyebrow{font-family:var(--font-sans);letter-spacing:.28em;text-transform:uppercase;color:var(--gold-deep-2);opacity:.85;text-align:center;margin-bottom:6px;font-size:.62rem;font-weight:600}.hero__welcome-lead{font-family:var(--font-display);color:var(--ink);opacity:.78;text-align:center;max-width:48ch;margin:0 auto;font-size:clamp(.95rem,2vw,1.05rem);font-style:italic}.rsvp__toggle-group{flex-wrap:wrap;gap:10px;display:flex}.rsvp__toggle{border:1px solid var(--gold);background:var(--ivory-dark);color:var(--ink);font-family:var(--font-sans);cursor:pointer;border-radius:999px;align-items:center;padding:12px 22px;font-size:.92rem;font-weight:600;transition:background .2s,box-shadow .2s;display:inline-flex}.rsvp__toggle:has(input:checked){background:var(--gold);box-shadow:0 4px 14px color-mix(in srgb, var(--gold) 35%, transparent)}.rsvp__toggle:has(input:focus-visible){outline:2px solid var(--gold-deep-2);outline-offset:3px}.rsvp__toggle-group--invalid{outline:2px solid var(--gold-deep-2);outline-offset:6px;background:color-mix(in srgb, var(--gold-deep-2) 10%, transparent);border-radius:999px}.rsvp__field--attending{margin-bottom:28px}.envelope-scene{z-index:1000;background:radial-gradient(circle at 50% 40%, var(--ivory) 0%, var(--ivory-dark) 100%);will-change:transform, opacity;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.envelope-scene__inner{flex-direction:column;justify-content:center;align-items:center;width:100%;padding:24px;display:flex;position:relative}.envelope-skip{border:1px solid var(--gold);color:var(--ink);font-family:var(--font-display);z-index:5;background:0 0;border-radius:999px;padding:8px 18px;font-size:.9rem;position:absolute;top:20px;right:20px}.envelope-skip:hover{background:var(--gold);color:var(--ink)}.envelope{flex-direction:column;align-items:center;gap:22px;display:flex}.envelope__body{background-image:url(/images/band-ground-dark.webp);background-color:var(--night-bg);width:min(88vw,340px);height:min(60vw,230px);box-shadow:var(--shadow-strong);perspective:1000px;background-position:100% 100%;background-repeat:no-repeat;background-size:cover;border-radius:6px;position:relative}.envelope__body:before{content:"";border:1px solid color-mix(in srgb, var(--gold) 22%, transparent);pointer-events:none;border-radius:3px;position:absolute;inset:10px}.envelope__lining{z-index:1;clip-path:polygon(0 0,100% 0,50% 100%);background-image:url(/images/band-ground-pale.webp);background-color:var(--ivory);background-blend-mode:multiply;background-position:top;background-repeat:no-repeat;background-size:180%;width:100%;height:60%;position:absolute;top:0;left:0;box-shadow:inset 0 0 0 100vmax #3d080c47}.envelope__shadow-fold{z-index:1;clip-path:polygon(0 100%,100% 100%,0 0);background:#3d080c1f;width:50%;height:100%;transition:background .62s cubic-bezier(.65,0,.35,1) .1s;position:absolute;bottom:0}.envelope__shadow-fold--left{left:0}.envelope__shadow-fold--right{clip-path:polygon(0 100%,100% 100%,100% 0);right:0}.envelope--opening .envelope__shadow-fold{background:#3d080c38}.envelope__flap{transform-origin:top;width:100%;height:60%;transform-style:preserve-3d;z-index:2;position:absolute;top:0;left:0}.envelope__flap-face{backface-visibility:hidden;background-repeat:no-repeat;position:absolute;inset:0}.envelope__flap-face--front{clip-path:polygon(0 0,100% 0,50% 100%);background-image:url(/images/band-ground-dark.webp);background-color:var(--night-bg-deep);background-position:0 0;background-size:220%}.envelope__flap-face--back{clip-path:polygon(0 100%,100% 100%,50% 0);background-image:url(/images/band-ground-dark.webp);background-color:var(--night-bg-deep);background-position:100% 0;background-size:220%;transform:rotateX(180deg)}.envelope__flap-face--back:after{content:"";clip-path:polygon(3.3% 100%,96.7% 100%,50% 6.5%);background-image:linear-gradient(#3d080c00 45%,#3d080c3d 100%),url(/images/band-ground-pale.webp);background-color:var(--ivory);background-blend-mode:normal, multiply;background-position:50%,top;background-repeat:no-repeat;background-size:100% 100%,180%;position:absolute;inset:0}.envelope__seal-anchor{backface-visibility:hidden;display:flex;position:absolute;top:83.3333%;left:50%;transform:translate(-50%,-50%)translateZ(1px)}.envelope__seal-btn{background:0 0;border:none;border-radius:50%;padding:0;display:flex;position:relative}.envelope__seal-shimmer{background:radial-gradient(circle, var(--gold-antique-1) 0%, transparent 70%);filter:blur(4px);border-radius:50%;position:absolute;inset:-6px}.envelope__hint{font-family:var(--font-display);color:var(--ink);opacity:.75;font-size:1rem;font-style:italic}.envelope__key-hint{font-family:var(--font-display);color:var(--ink);opacity:.55;margin-top:10px;font-size:.82rem}.envelope__key-hint kbd{border:1px solid #5c0e1459;border-radius:5px;padding:1px 7px 2px;font-family:inherit}@media (hover:none) and (pointer:coarse){.envelope__key-hint{display:none}}.envelope__open-text{border:1px solid var(--gold);color:var(--ink);font-family:var(--font-display);background:0 0;border-radius:999px;padding:10px 26px;font-size:1rem}.envelope__open-text:hover{background:var(--gold);color:var(--ink)}@media (prefers-reduced-motion:reduce){.envelope__shadow-fold{transition:none}}
