:root{--navy: #100b2d;--navy-deep: #09061f;--navy-soft: #29284d;--ivory: #fffaf0;--paper: #fffdf7;--ink: #17122d;--gold: #caa15b;--gold-light: #ead3a0;--saffron: #db9a34;--rose: #b76b65;--sage: #85907a;--serif: "Bodoni 72", Didot, "Iowan Old Style", "Times New Roman", serif;--script: "Snell Roundhand", "Segoe Script", cursive;--sans: "Avenir Next", Avenir, Montserrat, system-ui, sans-serif;--ease: cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth;background:var(--navy-deep)}body{margin:0;color:var(--ivory);background:radial-gradient(circle at 16% 12%,rgba(202,161,91,.12),transparent 24rem),linear-gradient(90deg,#07051a,var(--navy-deep) 22%,var(--navy-deep) 78%,#07051a);font-family:var(--sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button,a{color:inherit}img{display:block;max-width:100%}::selection{background:var(--gold);color:var(--navy-deep)}body.invitation-closed{overflow:hidden}.opening-screen{position:fixed;z-index:200;inset:0;display:grid;padding:max(1.25rem,env(safe-area-inset-top)) 1.25rem max(1.25rem,env(safe-area-inset-bottom));place-items:center;overflow-y:auto;cursor:pointer;background:radial-gradient(ellipse at 50% 35%,#302344,var(--navy-deep) 80%);transition:opacity .8s var(--ease),transform .8s var(--ease)}.opening-screen.is-opening{opacity:0;transform:translateY(-2rem) scale(1.035);pointer-events:none}.opening-screen:focus{outline:none}.open-invitation:focus:not(:focus-visible){outline:none}.opening-card{position:relative;isolation:isolate;width:min(100%,380px);margin-block:auto;overflow:hidden;padding:4.5rem 1.5rem 2rem;border:1px solid var(--gold);border-radius:11rem 11rem .5rem .5rem;color:var(--ink);background:radial-gradient(ellipse at top,#f6ead5,var(--paper) 65%);box-shadow:0 25px 90px #0006;text-align:center}.opening-card:before{position:absolute;z-index:-1;inset:.6rem;border:1px solid #caa15b80;border-radius:inherit;content:"";pointer-events:none}.opening-eyebrow{position:relative;margin:1rem 0;color:#725b3f;font-size:.6rem;letter-spacing:.2em}.opening-ornament{margin:1.2rem 0;color:#94723e}.opening-card h2{display:flex;flex-direction:column;align-items:center;margin:0;font-family:var(--script);font-size:clamp(2.9rem,12vw,4rem);font-weight:400;line-height:1.15;letter-spacing:-.045em}.opening-card h2 em{margin:.25rem 0;color:#94723e;font-family:var(--serif);font-size:1.4rem;font-weight:400}.opening-date{margin:1.5rem 0;color:#725b3f;font-size:.62rem;letter-spacing:.17em;text-transform:uppercase}.opening-message{font-family:var(--serif);font-size:1.15rem;font-style:italic;line-height:1.5}.open-invitation{display:inline-flex;flex-direction:column;align-items:center;gap:.9rem;margin-top:.7rem;padding:.5rem 1.2rem;border:0;background:transparent;color:var(--ink);cursor:pointer}.opening-seal{display:grid;grid-auto-flow:column;place-content:center;gap:.1rem;width:4.2rem;height:4.2rem;border:3px double #e7ca8e;border-radius:50%;color:#f9e9c8;background:linear-gradient(135deg,#ab8249,#735024);box-shadow:0 5px 15px #725b3f33;font-family:var(--serif);font-size:1.2rem;transition:transform .3s var(--ease)}.opening-seal span{align-self:center;font-size:.75rem;font-style:italic}.open-invitation:hover .opening-seal{transform:scale(1.07)}.open-invitation:focus-visible,.music-toggle:focus-visible{outline:2px solid var(--gold);outline-offset:5px}.opening-action{font-size:.65rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.opening-sound-note{margin:.85rem 0 0;color:#725b3f;font-size:.6rem}.music-toggle{position:fixed;z-index:110;right:max(1rem,calc((100vw - 480px)/2 + 1rem));bottom:max(1rem,env(safe-area-inset-bottom));display:inline-flex;align-items:center;gap:.5rem;min-height:44px;padding:.65rem 1rem;border:1px solid var(--gold);border-radius:2rem;color:var(--gold-light);background:#100b2df2;box-shadow:0 4px 20px #0003;cursor:pointer;font-size:.7rem}.music-toggle>span:first-child{font-size:1.15rem}@media(max-width:360px),(max-height:700px){.opening-card{padding-top:3rem;padding-bottom:1.4rem}.opening-card h2{font-size:2.9rem}.opening-ornament{margin-block:.6rem}.opening-date{margin-block:1rem}.opening-message{margin-block:.8rem}}.progress-track{position:fixed;z-index:100;top:0;left:max(0px,calc(50% - 240px));width:2px;height:100svh;background:#ffffff12;pointer-events:none}.progress-track span{display:block;width:100%;height:0;background:linear-gradient(var(--gold-light),var(--gold),var(--rose));box-shadow:0 0 12px #caa15b99}.invitation-shell{position:relative;width:min(100%,480px);margin-inline:auto;overflow:hidden;background:var(--navy);box-shadow:0 0 70px #00000073}.section-dark{background:var(--navy)}.paper{position:relative;z-index:3;color:var(--ink);background:var(--paper)}.eyebrow{margin:0 0 .65rem;font-size:.67rem;font-weight:500;letter-spacing:.27em;text-transform:uppercase}.eyebrow.ink{color:#725b3f}.subtitle{margin:.35rem auto 0;font-size:.82rem;letter-spacing:.04em;opacity:.78}.body-copy{margin:1.5rem auto;max-width:22rem;font-size:.94rem;line-height:1.75}.body-copy.slim{margin-block:.8rem 1rem;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.section-heading{position:relative;z-index:3;padding-inline:1.5rem;text-align:center}.section-heading h2,.paper h2,.blessing-dialog h2{margin:0;font-family:var(--serif);font-size:clamp(3rem,14vw,4.4rem);font-weight:400;line-height:.88;letter-spacing:-.045em;text-transform:uppercase}.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.reveal.is-visible{opacity:1;transform:translateY(0)}.hero{position:relative;isolation:isolate;min-height:max(760px,100svh);overflow:hidden}.hero-photo,.hero-vignette{position:absolute;inset:0;width:100%;height:100%}.hero-photo{z-index:-3;object-fit:cover;object-position:center;transform:scale(1.055);animation:heroAwaken 2.8s var(--ease) .15s forwards}.hero-vignette{z-index:-2;background:linear-gradient(to bottom,rgba(7,5,25,.18) 0%,rgba(7,5,25,.08) 28%,rgba(7,5,25,.34) 58%,var(--navy) 97%),radial-gradient(ellipse at center,transparent 15%,rgba(3,3,14,.22) 100%)}@keyframes heroAwaken{to{transform:scale(1)}}.floral{position:absolute;z-index:4;pointer-events:none;-webkit-user-select:none;user-select:none}.floral-hero{top:-4.8rem;left:-4.5rem;width:118%;max-width:none;filter:drop-shadow(0 18px 24px rgba(0,0,0,.2));transform-origin:top left;animation:floralBloom 1.7s var(--ease) both,floralBreathe 8s ease-in-out 2s infinite alternate}@keyframes floralBloom{0%{opacity:0;transform:scale(.93) translate(-10px,-10px)}}@keyframes floralBreathe{to{transform:translate3d(3px,5px,0) rotate(.3deg)}}.hero-copy{position:relative;z-index:3;display:flex;min-height:100svh;padding:max(10rem,20svh) 1.5rem 7rem;align-items:center;flex-direction:column;text-align:center;text-shadow:0 2px 18px rgba(0,0,0,.48)}.hero-copy>.eyebrow{margin-top:auto}.hero h1{display:flex;margin:.45rem 0 .65rem;flex-direction:column;align-items:center;font-family:var(--script);font-size:clamp(4.3rem,21vw,6.3rem);font-weight:400;line-height:.58;letter-spacing:-.055em}.hero h1 span:last-child{margin-top:.3rem}.hero h1 em{margin:.1rem 0 .4rem;color:var(--gold-light);font-family:var(--serif);font-size:1.25rem;font-style:italic;line-height:1}.hero-subtitle{max-width:17rem;margin:1rem auto 0;font-family:var(--serif);font-size:.98rem;font-style:italic;letter-spacing:.05em}.monogram{position:relative;width:3.8rem;height:3.8rem;margin-top:2rem;border:1px solid rgba(234,211,160,.78);border-radius:50%;background:#09061f47;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer}.monogram span{position:relative;z-index:2;color:var(--gold-light);font-family:serif;font-size:1.25rem}.monogram i{position:absolute;inset:-1px;border:1px solid var(--gold);border-radius:inherit;opacity:0}.monogram.blessed i{animation:blessingRing .8s var(--ease)}@keyframes blessingRing{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(2)}}.scroll-cue{position:absolute;z-index:5;right:0;bottom:3.2rem;left:0;display:grid;gap:.45rem;justify-items:center;font-size:.55rem;letter-spacing:.25em;text-decoration:none;text-transform:uppercase}.scroll-cue span{width:1px;height:1.8rem;background:linear-gradient(transparent,var(--gold-light));animation:cue 1.8s ease-in-out 2}@keyframes cue{50%{transform:translateY(.45rem)}}.hero-edge{position:absolute;z-index:6;right:-2%;bottom:-1px;left:-2%;height:2.4rem;background:var(--paper);clip-path:polygon(0 70%,3% 44%,7% 65%,10% 39%,14% 62%,18% 43%,22% 67%,27% 37%,31% 61%,35% 42%,40% 64%,45% 35%,49% 63%,54% 42%,59% 66%,64% 36%,69% 62%,74% 44%,80% 69%,84% 39%,89% 61%,94% 43%,100% 68%,100% 100%,0 100%)}.petal-field{position:absolute;z-index:2;inset:0;overflow:hidden;pointer-events:none}.petal-field i{position:absolute;top:-5%;left:var(--x);width:.72rem;height:.42rem;border-radius:90% 20% 80%;background:linear-gradient(135deg,#f0b390,#b44d4f);opacity:calc(.65 * var(--s));animation:petalFall 10s linear var(--d) infinite}@keyframes petalFall{to{transform:translate3d(38px,110svh,0) rotate(520deg)}}.invitation-section{min-height:720px;padding:5.6rem 1.4rem 6rem;text-align:center}.paper-inner{position:relative;z-index:3}.ornament{margin:0 0 1.7rem;color:var(--gold);font-size:1rem}.couple-portrait{width:min(100%,340px);margin:0 auto 2.5rem}.couple-portrait img{width:100%;height:auto;aspect-ratio:3 / 4;padding:.4rem;border:1px solid var(--gold);border-radius:1rem;background:var(--paper);box-shadow:0 12px 30px #17122d1f}.couple-portrait figcaption{margin-top:1rem;color:var(--ink);font-family:var(--serif);font-size:clamp(1.25rem,5vw,1.6rem);font-style:italic}.couple-portrait figcaption span{padding-inline:.2rem;color:#725b3f}.invitation-section h2{font-size:clamp(3.4rem,16vw,5rem)}.grand-date{display:flex;margin:2.3rem auto .4rem;align-items:center;justify-content:center;color:var(--navy);font-family:var(--serif);font-size:clamp(2.6rem,12vw,3.7rem);font-weight:400;letter-spacing:-.065em;line-height:1}.grand-date i{width:.26rem;height:.26rem;margin-inline:.48rem;border-radius:50%;background:var(--gold)}.text-button{position:relative;min-height:44px;padding:.65rem 1rem;border:0;border-bottom:1px solid rgba(23,18,45,.35);color:var(--ink);background:transparent;font-size:.72rem;font-weight:600;letter-spacing:.13em;text-transform:uppercase;cursor:pointer;overflow:hidden}.text-button:after{position:absolute;right:50%;bottom:-1px;left:50%;height:1px;background:var(--gold);content:"";transition:right .35s var(--ease),left .35s var(--ease)}.text-button:hover:after,.text-button:focus-visible:after{right:0;left:0}.countdown{display:flex;max-width:22rem;margin:3.1rem auto 0;padding-top:1.5rem;align-items:start;justify-content:center;border-top:1px solid rgba(202,161,91,.36)}.countdown div{display:grid;width:5.4rem;gap:.25rem}.countdown strong{font-family:var(--serif);font-size:1.65rem;font-weight:400}.countdown span{color:#725b3f;font-size:.57rem;letter-spacing:.18em;text-transform:uppercase}.countdown b{margin-top:.35rem;color:var(--gold);font-family:var(--serif);font-weight:400}.events{position:relative;padding:7.4rem 1.25rem 7rem}.events:before{position:absolute;top:-1.65rem;right:-2%;left:-2%;height:2.2rem;background:var(--paper);clip-path:polygon(0 0,100% 0,100% 32%,96% 55%,92% 38%,87% 65%,82% 37%,77% 61%,72% 40%,67% 69%,61% 43%,55% 61%,49% 36%,43% 63%,37% 41%,31% 68%,25% 39%,19% 60%,13% 36%,7% 62%,0 35%);content:""}.events .section-heading h2{font-size:clamp(3.3rem,15vw,4.7rem)}.lotus-line{display:flex;margin:1.6rem auto 0;align-items:center;justify-content:center;color:var(--gold)}.lotus-line span{width:3.8rem;height:1px;background:linear-gradient(90deg,transparent,currentColor);transform:scaleX(0);transition:transform 1s var(--ease) .4s;transform-origin:right}.lotus-line span:last-child{background:linear-gradient(90deg,currentColor,transparent);transform-origin:left}.is-visible .lotus-line span,.lotus-line:has(.is-visible) span{transform:scaleX(1)}.lotus-line i{margin-inline:.8rem;font-style:normal}.timeline{position:relative;display:grid;gap:1rem;margin-top:3rem}.timeline:before{position:absolute;z-index:0;top:1rem;bottom:1rem;left:50%;width:1px;background:linear-gradient(transparent,rgba(202,161,91,.65),transparent);content:"";transform:scaleY(0);transform-origin:top;transition:transform 1.6s var(--ease)}.timeline.is-drawn:before{transform:scaleY(1)}.event-card{position:relative;z-index:1;min-height:12.8rem;padding:2rem 1.2rem 1.5rem;border:1px solid rgba(234,211,160,.22);background:#ffffff09;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-align:center;transition:opacity .8s var(--ease),transform .5s var(--ease),border-color .3s,background .3s}.event-card:hover,.event-card:focus{border-color:#ead3a099;background:#fff1;transform:translateY(-4px);outline:none}.event-card time{color:var(--gold-light);font-size:.62rem;letter-spacing:.18em}.event-card h3{margin:.35rem 0 .12rem;font-family:var(--serif);font-size:1.7rem;font-weight:400;text-transform:uppercase}.event-card p{margin:0;font-size:.72rem;opacity:.65}.event-detail{display:block;max-height:0;margin:0 auto;overflow:hidden;font-family:var(--serif);font-size:.88rem;font-style:italic;opacity:0;transition:max-height .4s var(--ease),margin .4s var(--ease),opacity .4s}.event-card:hover .event-detail,.event-card:focus .event-detail{max-height:4rem;margin-top:.8rem;opacity:.8}.event-icon{width:2.8rem;height:2.8rem;margin:1rem auto .25rem;border:1px solid rgba(202,161,91,.7);border-radius:50%;color:var(--gold-light);display:grid;place-items:center;transition:transform .5s var(--ease),box-shadow .5s}.event-card:hover .event-icon,.event-card:focus .event-icon{transform:rotate(9deg) scale(1.08);box-shadow:0 0 24px #caa15b38}.event-card:nth-child(2) .event-icon{border-radius:45% 55% 46% 54%}.venue{position:relative;min-height:820px;padding-top:2rem;overflow:hidden}.venue .section-heading{padding-top:2.6rem}.venue-copy{position:relative;z-index:5;margin:2.5rem auto 3rem;padding-inline:1.5rem;text-align:center}.venue-copy>p{margin:.7rem 0 .1rem;font-size:.78rem;opacity:.72}.venue-copy h3{margin:0;font-family:var(--serif);font-size:1.85rem;font-weight:400;text-transform:uppercase}.venue-copy address{margin-top:.45rem;font-size:.78rem;font-style:normal;line-height:1.6;opacity:.72}.pin{display:grid;width:2.5rem;height:2.5rem;margin:0 auto;place-items:center;border:1px solid rgba(202,161,91,.45);border-radius:50% 50% 50% 0;transform:rotate(-45deg);animation:pinFloat 3.4s ease-in-out infinite}.pin span{width:.4rem;height:.4rem;border-radius:50%;background:var(--gold)}@keyframes pinFloat{50%{transform:rotate(-45deg) translate(3px,-3px)}}.button-row{display:flex;margin-top:1.3rem;gap:.5rem;justify-content:center}.outline-button,.primary-button,.icon-button,.blessing-button{position:relative;min-height:48px;border:1px solid rgba(234,211,160,.58);background:transparent;color:inherit;cursor:pointer;text-decoration:none;transition:transform .18s ease,background .25s,color .25s,box-shadow .25s}.outline-button{display:inline-flex;padding:.78rem 1.3rem;align-items:center;gap:.8rem;font-size:.67rem;letter-spacing:.13em;text-transform:uppercase}.icon-button{width:48px;font-size:1rem}.outline-button:hover,.outline-button:focus-visible,.icon-button:hover,.icon-button:focus-visible{background:var(--gold-light);color:var(--navy-deep);box-shadow:0 8px 30px #caa15b33}.outline-button:active,.icon-button:active,.primary-button:active,.blessing-button:active{transform:scale(.97)}.venue-photo-wrap{position:relative;z-index:2;height:350px;overflow:hidden}.venue-photo-wrap:after{position:absolute;inset:0;background:linear-gradient(var(--navy),transparent 28%,rgba(7,5,25,.12) 65%,var(--navy));content:""}.venue-photo-wrap img{width:100%;height:100%;object-fit:cover}.floral-venue{z-index:3;right:-13rem;bottom:-4rem;width:35rem;max-width:none}.blessings{position:relative;min-height:700px;padding:7rem 1.5rem;overflow:hidden;text-align:center}.blessing-copy{position:relative;z-index:2;max-width:21rem;margin:2rem auto}.blessing-copy p{font-family:var(--serif);font-size:1rem;line-height:1.6}.blessing-copy p+p{margin-top:1.5rem;font-family:var(--sans);font-size:.78rem;opacity:.68}.diya-glow{position:relative;z-index:2;width:4.5rem;height:4.5rem;margin:2rem auto 1rem;border:1px solid rgba(202,161,91,.3);border-radius:50%;display:grid;place-items:center}.diya-glow:before{width:.78rem;height:1.2rem;border-radius:60% 40% 55% 45%;background:linear-gradient(#fff7c5,#dd8b29);box-shadow:0 0 22px 8px #dd8b2933;content:"";transform:rotate(45deg);animation:flame 2s ease-in-out infinite alternate}.diya-glow span{position:absolute;bottom:.85rem;width:2rem;height:.5rem;border:1px solid var(--gold);border-radius:0 0 50% 50%}@keyframes flame{to{transform:rotate(38deg) scale(.92,1.1)}}.blessing-button{display:inline-flex;padding:.8rem 1.2rem;align-items:center;gap:.7rem;font-size:.67rem;letter-spacing:.14em;text-transform:uppercase}.blessing-button span{color:var(--gold-light);font-size:1rem}.outline-lotus{position:absolute;right:-1.5rem;bottom:1rem;color:#ffffff1c;font-family:var(--serif);font-size:12rem;line-height:1;transform:rotate(-18deg)}.community{min-height:860px;padding:7.8rem 1.4rem 9rem;text-align:center}.community:before{position:absolute;top:-2rem;right:-2%;left:-2%;height:2.2rem;background:var(--paper);clip-path:polygon(0 78%,4% 49%,8% 67%,13% 43%,17% 71%,22% 48%,27% 69%,31% 40%,36% 67%,41% 47%,46% 72%,51% 39%,56% 67%,61% 45%,67% 72%,72% 39%,78% 68%,84% 43%,90% 72%,95% 48%,100% 67%,100% 100%,0 100%);content:""}.community h2{font-size:clamp(3.7rem,17vw,5.2rem)}.community .paper-inner{z-index:5}.community .body-copy{max-width:21rem}.chat-preview{display:grid;gap:.55rem;max-width:20rem;margin:2rem auto;justify-items:start}.chat-preview span{padding:.62rem .9rem;border-radius:1rem 1rem 1rem .2rem;background:#efeadf;font-size:.72rem;box-shadow:0 5px 14px #17122d0f}.chat-preview span:last-child{justify-self:end;border-radius:1rem 1rem .2rem;background:#e7e2f0}.primary-button{isolation:isolate;display:flex;width:min(100%,22rem);min-height:54px;margin:1.3rem auto 0;padding:.85rem 1.2rem;align-items:center;justify-content:center;gap:.8rem;border-color:var(--navy);color:var(--navy);font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;overflow:hidden}.primary-button:before{position:absolute;z-index:-1;inset:0;background:var(--navy);content:"";transform:translate(-103%);transition:transform .45s var(--ease)}.primary-button>*{position:relative;z-index:1}.primary-button:hover,.primary-button:focus-visible{color:var(--ivory);outline:none}.primary-button:hover:before,.primary-button:focus-visible:before{transform:translate(0)}.community .text-button{margin-top:.5rem}.botanical-divider{position:relative;width:12rem;margin:3.4rem auto 0;color:var(--gold)}.botanical-divider:before,.botanical-divider:after{position:absolute;top:50%;width:4rem;height:1px;background:linear-gradient(90deg,transparent,var(--gold));content:""}.botanical-divider:before{left:0}.botanical-divider:after{right:0;transform:rotate(180deg)}.botanical-divider span{font-family:var(--serif);font-size:2.5rem}.floral-community{z-index:3;right:-13rem;bottom:-7rem;width:36rem;max-width:none;filter:drop-shadow(0 -15px 20px rgba(23,18,45,.08))}.rsvp{position:relative;padding:7.5rem 1.35rem 0}.rsvp-form{position:relative;z-index:2;display:grid;gap:1.35rem;max-width:23rem;margin:3rem auto 0}.rsvp-form>label{display:grid;gap:.45rem}.rsvp-form label>span,.rsvp-form legend,.blessing-dialog label>span{font-size:.62rem;letter-spacing:.16em;text-transform:uppercase}.rsvp-form input,.rsvp-form textarea,.rsvp-form select,.blessing-dialog input,.blessing-dialog textarea{width:100%;border:0;border-bottom:1px solid rgba(255,255,255,.3);border-radius:0;padding:.8rem .15rem;outline:0;background:transparent;color:var(--ivory);transition:border-color .25s,box-shadow .25s}.rsvp-form input::placeholder,.rsvp-form textarea::placeholder{color:#ffffff5e}.rsvp-form input:focus,.rsvp-form textarea:focus,.rsvp-form select:focus{border-color:var(--gold-light);box-shadow:0 1px var(--gold-light)}.rsvp-form textarea{resize:vertical}.rsvp-form select{color-scheme:dark}.rsvp-form fieldset{display:grid;margin:0;padding:0;border:0;gap:.5rem}.rsvp-form legend{margin-bottom:.6rem}.choice{cursor:pointer}.choice input{position:absolute;width:1px;height:1px;opacity:0}.choice span{display:block;padding:.85rem 1rem;border:1px solid rgba(255,255,255,.2);font-size:.75rem;letter-spacing:.04em;text-transform:none;transition:background .25s,border-color .25s,transform .2s}.choice input:checked+span{border-color:var(--gold-light);background:#caa15b26}.choice:active span{transform:scale(.985)}.primary-button.light{border-color:var(--gold-light);color:var(--ivory)}.primary-button.light:before{background:var(--gold-light)}.primary-button.light:hover,.primary-button.light:focus-visible{color:var(--navy-deep)}.rsvp-success{max-width:22rem;margin:4rem auto;padding:2.3rem 1.4rem;border:1px solid rgba(202,161,91,.4);text-align:center}.rsvp-success h3{margin:.8rem 0 .3rem;font-family:var(--serif);font-size:1.8rem;font-weight:400;text-transform:uppercase}.rsvp-success p{font-size:.8rem;opacity:.7}.success-rangoli{width:3.4rem;height:3.4rem;margin:auto;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold-light);animation:rangoli 1.2s var(--ease)}@keyframes rangoli{0%{opacity:0;transform:scale(.2) rotate(-90deg)}}footer{margin:7rem -1.35rem 0;padding:4rem 1.5rem max(3rem,env(safe-area-inset-bottom));border-top:1px solid rgba(255,255,255,.11);text-align:center}footer p{margin:0;font-family:var(--script);font-size:2.4rem}footer span{display:block;margin-top:.25rem;color:var(--gold-light);font-family:var(--serif);letter-spacing:.15em}footer a{display:inline-block;min-height:44px;margin-top:2rem;font-size:.6rem;letter-spacing:.16em;text-decoration:none;text-transform:uppercase}.toast{position:fixed;z-index:120;right:1rem;bottom:max(5.5rem,calc(env(safe-area-inset-bottom) + 5.5rem));left:1rem;max-width:22rem;margin:auto;padding:.75rem 1rem;border:1px solid rgba(234,211,160,.5);background:#100b2df0;box-shadow:0 10px 35px #00000047;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-size:.75rem;text-align:center;opacity:0;pointer-events:none;transform:translateY(.8rem);transition:opacity .3s,transform .3s var(--ease)}.toast.show{opacity:1;transform:translateY(0)}.blessing-dialog{width:min(calc(100% - 2rem),420px);max-height:calc(100svh - 1rem);padding:0;overflow-y:auto;border:0;color:var(--ink);background:var(--paper);box-shadow:0 30px 100px #00000073}.blessing-dialog::backdrop{background:#070519c7;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.blessing-dialog[open]{animation:dialogIn .45s var(--ease)}@keyframes dialogIn{0%{opacity:0;transform:translateY(20px) scale(.97)}}.blessing-dialog form{position:relative;display:grid;padding:3.4rem 1.4rem 1.5rem;gap:1rem}.blessing-dialog h2{margin-bottom:1rem;font-size:2.7rem}.blessing-dialog label{display:grid;gap:.25rem}.blessing-dialog input,.blessing-dialog textarea{border-bottom-color:#17122d4d;color:var(--ink)}.dialog-close{position:absolute;top:.6rem;right:.6rem;width:44px;height:44px;border:0;background:transparent;color:var(--ink);font-family:var(--serif);font-size:1.7rem;cursor:pointer}.blessing-dialog .primary-button{margin-top:.8rem}.burst-petal{position:fixed;z-index:130;top:50%;left:50%;width:.8rem;height:.5rem;border-radius:90% 20% 80%;background:var(--rose);pointer-events:none;animation:burst 1.25s var(--ease) forwards}@keyframes burst{to{opacity:0;transform:translate(var(--dx),var(--dy)) rotate(var(--rot))}}.page-hidden *,.page-hidden *:before,.page-hidden *:after{animation-play-state:paused!important}@media(min-width:700px){body:before,body:after{position:fixed;top:0;bottom:0;width:1px;background:linear-gradient(transparent,rgba(202,161,91,.22) 15%,rgba(202,161,91,.22) 85%,transparent);content:""}body:before{left:calc(50% - 260px)}body:after{right:calc(50% - 260px)}}@media(max-width:360px){.hero h1{font-size:4.15rem}.floral-hero{width:130%}.body-copy{font-size:.88rem}}@media(max-height:650px){.blessing-dialog form{padding-top:2.7rem;gap:.65rem}.blessing-dialog h2{margin-bottom:.35rem;font-size:2.25rem}.blessing-dialog textarea{max-height:94px}.blessing-dialog .primary-button{margin-top:.2rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}.petal-field{display:none}}.hero h1{font-size:clamp(3.5rem,17vw,5rem)}.family-details{margin:2.5rem auto;max-width:24rem}.family-details p{margin:2rem 0;font-size:clamp(1rem,4vw,1.15rem);line-height:1.7;text-wrap:balance}.family-details strong{display:block;font-family:var(--script);font-size:clamp(2.8rem,12vw,3.5rem);font-weight:400}.family-details span{display:block;margin:.35rem 0;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;opacity:.7}.event-card p a{display:inline-block;padding:.65rem .2rem;text-underline-offset:.25rem}.event-card p{opacity:.85}.contact-details{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem 2rem;margin:2rem auto}.contact-details p{margin:0}.contact-details strong,.contact-details a{display:block}.contact-details strong{font-family:var(--serif);font-size:1.3rem;font-weight:400}.contact-details a{padding:.6rem 0;font-size:.82rem;text-underline-offset:.25rem}.family-details .weds{margin:1rem 0;color:#725b3f;font-family:var(--serif);font-size:1.3rem;font-style:italic}.stay-timings span{max-width:100%;line-height:1.6}.stay-timings time{display:block}
