:root{--env-a-x: 0%;--env-a-y: 11.311%;--env-b-x: 100%;--env-b-y: 11.178%;--env-c-x: 70.712%;--env-c-y: 52.423%;--env-d-x: 100%;--env-d-y: 93.373%;--env-e-x: 0%;--env-e-y: 92.083%;--env-f-x: 29.502%;--env-f-y: 50.917%;--env-p-x: 51.147%;--env-p-y: 79.975%;--env-q-x: 49.589%;--env-q-y: 22.889%;--rect-x: 17.333%;--rect-y: 29%;--rect-w: 66.75%;--rect-h: 44.667%;--rect-cx: .00708;--rect-cy: .01333;--rect-fw: .6675;--rect-fh: .44667;--env-aspect: 1.4944;--top-left: -.375%;--top-top: -.56%;--top-w: 100.874%;--top-h: 82.836%;--top-ox: 49.938%;--top-oy: .676%;--left-left: -.375%;--left-top: 9.888%;--left-w: 30.587%;--left-h: 83.769%;--left-ox: 1.224%;--left-oy: 47.884%;--right-left: 70.037%;--right-top: 9.701%;--right-w: 30.462%;--right-h: 85.261%;--right-ox: 98.361%;--right-oy: 47.265%;--bottom-left: -.375%;--bottom-top: 22.015%;--bottom-w: 100.874%;--bottom-h: 78.731%;--bottom-ox: 49.938%;--bottom-oy: 99.052%}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:300;font-display:swap;src:url(/assets/cormorant-garamond-300-DnhAbsab.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:300;font-display:swap;src:url(/assets/cormorant-garamond-300i-VfhMdCdm.woff2) format("woff2")}@font-face{font-family:Pinyon Script;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/pinyon-script-400-Bc_xRFAR.woff2) format("woff2")}@font-face{font-family:Italianno;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/italianno-400-CCxjcHx_.woff2) format("woff2")}@font-face{font-family:Jost;font-style:normal;font-weight:300;font-display:swap;src:url(/assets/jost-300-DbvFQv5H.woff2) format("woff2")}@font-face{font-family:Amiri;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/amiri-400-CSgI_00j.woff2) format("woff2")}:root{--paper: #f2efe7;--paper-band: #e9e5da;--paper-edge: #ebd3cd;--ink: #4a3b38;--ink-soft: #5f4e4a;--ink-rule: rgba(74, 59, 56, .26);--ink-hair: rgba(74, 59, 56, .13);--wine: #7e1d2e;--wine-soft: rgba(126, 29, 46, .42);--gilt: #17120f;--gilt-light: #4a3b38;--orchid: #b98fcb;--orchid-deep: #8e5a9e;--magenta: #b3155c;--marigold: #e8b62e;--blush: #efa9b8;--sage: #7c8b6a;--ivory: #f8f2e2;--shell: #370d28;--deep: #4e1233;--cream: #fbf5e6;--gold-soft: #f5ce6a;--gold: #e8b62e;--gold-light: #ffdd8f;--parchment: #f4ecd6;--paper-emboss: none;--font-serif: "Cormorant Garamond", Georgia, serif;--font-script: "Pinyon Script", "Cormorant Garamond", cursive;--font-flourish: "Italianno", "Pinyon Script", cursive;--font-arabic: Amiri, serif;--font-sans: Jost, "Helvetica Neue", Arial, sans-serif;--invite-width: 420px}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--ink);color:var(--cream);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}input,select,textarea,button{font-family:inherit}a{color:var(--gold-soft)}a:hover{color:var(--cream)}@keyframes spin-slow{to{transform:rotate(360deg)}}@keyframes flicker{0%,to{opacity:.8}44%{opacity:1}76%{opacity:.72}}@keyframes draw{0%{stroke-dashoffset:1600}to{stroke-dashoffset:0}}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.shell{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:40px 20px;background:radial-gradient(100% 80% at 50% 42%,#eed6d1,#dcbdb7 82%)}.shell__pane{width:100%;max-width:var(--invite-width);height:min(874px,calc(100dvh - 80px));overflow-y:auto;overflow-x:hidden;background:var(--paper);font-family:var(--font-serif);color:var(--ink);border-radius:34px;box-shadow:0 30px 66px #3a282647;-webkit-overflow-scrolling:touch;scrollbar-width:none}.shell__pane::-webkit-scrollbar{display:none}@media(max-width:520px){.shell{padding:0;align-items:stretch}.shell__pane{max-width:none;height:100dvh;border-radius:0;box-shadow:none}}.arches{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:.4}.arches--drawn{opacity:.5}.arches__lines{fill:none;stroke:var(--wine-soft);stroke-width:.7}.arches--drawn .arches__lines{stroke-dasharray:1600;animation:draw 4.5s ease-out .3s both}.candleglow{position:absolute;bottom:-70px;left:50%;transform:translate(-50%);width:340px;height:260px;background:radial-gradient(50% 50% at 50% 55%,rgba(239,169,184,.3),transparent 70%);animation:flicker 6.5s ease-in-out infinite;pointer-events:none}.eyebrow{font-family:var(--font-sans);font-size:9px;letter-spacing:.42em;text-transform:uppercase;color:var(--ink-soft)}.hairline{width:1px;height:38px;background:linear-gradient(to bottom,transparent,var(--ink-rule),transparent)}.rise{animation:rise 1s ease-out both}.rise--1{animation-delay:.1s}.rise--2{animation-delay:.2s}.rise--3{animation-delay:.3s}.rise--4{animation-delay:.4s}.gate{position:relative;min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;padding:56px 34px;text-align:center;overflow:hidden}.gate__body{position:relative;display:flex;flex-direction:column;align-items:center;gap:20px;width:100%}.gate__bismillah{font-family:var(--font-arabic);font-size:14px;color:var(--ink-soft)}.gate__names{font-size:40px;line-height:1.04;font-weight:300;margin:0}.gate__names em{font-size:.72em;font-family:var(--font-serif);font-style:italic;color:var(--wine)}.gate__form{display:flex;flex-direction:column;gap:14px;width:100%;max-width:280px}.gate__label{font-family:var(--font-sans);font-size:8.5px;letter-spacing:.36em;text-transform:uppercase;color:var(--wine)}.gate__input{width:100%;background:transparent;border:none;border-bottom:1px solid var(--ink-rule);padding:12px 2px;font-family:var(--font-serif);font-size:22px;text-align:center;letter-spacing:.06em;color:var(--ink);outline:none}.gate__input::placeholder{color:var(--ink-soft)}.gate__input:focus{border-bottom-color:var(--wine)}.gate__error{min-height:18px;font-family:var(--font-sans);font-weight:300;font-size:11px;letter-spacing:.08em;color:#8a2a12}.gate__hint{font-family:var(--font-sans);font-weight:300;font-size:11px;line-height:1.7;letter-spacing:.04em;color:var(--ink-soft);max-width:280px}.hero{position:relative;padding:60px 26px 44px;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;overflow:hidden}.hero .candleglow{bottom:-90px;width:360px;height:280px;background:radial-gradient(50% 50% at 50% 55%,rgba(255,206,120,.42),transparent 70%)}.hero__body{position:relative;display:flex;flex-direction:column;align-items:center;gap:15px}.hero__eyebrow{font-family:var(--font-sans);font-size:9.5px;letter-spacing:.4em;text-transform:uppercase;color:var(--ink-soft);line-height:1.9}.hero__names{margin:0;font-size:60px;line-height:.94;font-weight:300;text-shadow:0 0 46px rgba(255,206,120,.3)}.hero__names span{display:block;font-size:.3em;font-style:italic;letter-spacing:.12em;color:var(--gilt);margin:.2em 0}.hero__arabic{font-family:var(--font-arabic);font-size:24px;color:var(--gilt)}.hero__rule{width:190px;height:1px;background:linear-gradient(to right,transparent,var(--wine-soft),transparent);margin:4px 0}.hero__date{display:grid;grid-template-columns:auto auto;align-items:baseline;justify-items:start;column-gap:12px;row-gap:4px}.hero__day{grid-column:1;grid-row:2}.hero__weekday{grid-column:2;grid-row:1}.hero__month{grid-column:2;grid-row:2}.hero__day{font-size:56px;line-height:.76;font-weight:300;color:var(--gilt)}.hero__weekday{font-family:var(--font-sans);font-size:8.5px;letter-spacing:.38em;text-transform:uppercase;color:var(--ink-soft)}.hero__month{font-size:26px;font-weight:300}.hero__where{font-family:var(--font-sans);font-weight:300;font-size:11.5px;letter-spacing:.22em;line-height:2.1;color:var(--ink-soft)}.blessing{color:var(--ink);padding:150px 30px 46px;position:relative;display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center}.blessing__ayah{font-family:var(--font-arabic);font-size:16px;line-height:2;color:var(--ink-soft)}.blessing__text{margin:0;font-size:24px;line-height:1.6;font-weight:300;text-wrap:pretty}.divider{display:flex;align-items:center;gap:12px;color:var(--ink-rule)}.divider__line{width:34px;height:1px;background:currentColor}.schedule{color:var(--ink);padding:96px 26px 140px}.schedule__head{display:flex;align-items:baseline;justify-content:space-between;padding-bottom:12px;border-bottom:1px solid var(--ink-rule)}.schedule__title{margin:0;font-size:30px;font-weight:300}.schedule__stamp{font-family:var(--font-sans);font-size:8px;letter-spacing:.3em;text-transform:uppercase;color:var(--ink-soft)}.schedule__row{display:grid;grid-template-columns:68px 1fr;align-items:baseline;gap:14px;padding:13px 0;border-bottom:1px solid var(--ink-hair)}.schedule__time{font-family:var(--font-sans);font-size:12.5px;letter-spacing:.1em;color:var(--gilt);white-space:nowrap}.schedule__meridiem{margin-left:.32em;font-size:.78em;letter-spacing:.04em;color:var(--ink-soft)}.schedule__name{font-size:24px}.notes{color:var(--ink);padding:0 26px 46px;display:flex;flex-direction:column;gap:16px}.note{border:1px solid var(--ink-rule);padding:24px;display:flex;flex-direction:column;gap:10px}.note--tinted{background:linear-gradient(160deg,rgba(185,143,203,.14),transparent 62%)}.note__label{font-family:var(--font-sans);font-size:8.5px;letter-spacing:.38em;text-transform:uppercase;color:var(--gilt)}.note__headline{font-size:27px;font-weight:300}.note__body{font-family:var(--font-sans);font-weight:300;font-size:14px;line-height:1.7;color:var(--ink-soft);text-wrap:pretty}.countdown{position:relative;padding:46px 26px;display:flex;flex-direction:column;align-items:center;gap:22px;text-align:center;overflow:hidden}.countdown__ornament{position:absolute;top:50%;left:50%;width:420px;height:420px;margin:-210px 0 0 -210px;opacity:.14;pointer-events:none}.countdown__label{position:relative;font-family:var(--font-sans);font-size:8.5px;letter-spacing:.42em;text-transform:uppercase;color:var(--gilt)}.countdown__units{position:relative;display:flex;width:100%;--countdown-gap: clamp(6px, 3.2vw, 20px);gap:var(--countdown-gap)}.countdown__unit{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1 1 0;min-width:0;position:relative}.countdown__unit:not(:last-child):after{content:":";position:absolute;top:0;right:calc(var(--countdown-gap) / -2);transform:translate(50%);font-size:26px;line-height:1.5;font-weight:300;color:var(--ink-rule);pointer-events:none}.countdown__value{font-size:40px;font-weight:300;line-height:1;color:var(--gilt);font-variant-numeric:tabular-nums}.countdown__value--dim{color:#8d7a75}.countdown__unitlabel{font-family:var(--font-sans);font-size:8px;letter-spacing:.3em;text-transform:uppercase;color:var(--ink-soft)}.rsvp{color:var(--ink);padding:140px 26px 40px;border-top:2px solid var(--ink-rule)}.rsvp__head{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;margin-bottom:28px}.rsvp__deadline{font-family:var(--font-sans);font-size:8.5px;letter-spacing:.42em;text-transform:uppercase;color:var(--gilt)}.rsvp__title{margin:0;font-size:42px;font-weight:300;line-height:1.02}.rsvp__subtitle{margin:0;font-family:var(--font-sans);font-weight:300;font-size:14px;line-height:1.7;color:var(--ink-soft)}.rsvp__form{display:flex;flex-direction:column;gap:24px}.rsvp__field{display:flex;flex-direction:column;gap:8px}.rsvp__label{font-family:var(--font-sans);font-size:8.5px;letter-spacing:.32em;text-transform:uppercase;color:var(--gilt)}.rsvp__input,.rsvp__select{background:transparent;border:none;border-bottom:1px solid var(--ink-rule);padding:12px 2px;font-family:var(--font-serif);font-size:21px;color:var(--ink);outline:none}.rsvp__input::placeholder{color:var(--ink-soft)}.rsvp__select{background:var(--paper);min-height:46px}.rsvp__input:focus,.rsvp__select:focus{border-bottom-color:var(--wine)}.rsvp__choices{display:flex;flex-direction:column;gap:10px}.rsvp__choice{display:flex;align-items:center;gap:12px;padding:16px 18px;min-height:46px;border:1px solid var(--ink-hair);cursor:pointer;transition:border-color .16s ease,background .16s ease}.rsvp__choice:hover,.rsvp__choice:focus-within{border-color:var(--wine-soft);background:#b98fcb1f}.rsvp__choice input{accent-color:var(--wine);width:16px;height:16px}.rsvp__choicetext{font-size:21px}.rsvp__textarea{background:transparent;border:1px solid var(--ink-hair);padding:12px;font-family:var(--font-serif);font-size:18px;line-height:1.6;color:var(--ink);outline:none;resize:none}.rsvp__textarea::placeholder{color:var(--ink-soft)}.rsvp__textarea:focus{border-color:var(--wine)}.rsvp__thanks{border:1px solid var(--ink-rule);padding:30px 24px;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;background:radial-gradient(90% 90% at 50% 0%,rgba(185,143,203,.14),transparent 72%)}.rsvp__thankstitle{font-size:30px;font-weight:300;line-height:1.1}.rsvp__thanksnote{margin:0;font-family:var(--font-sans);font-weight:300;font-size:14.5px;line-height:1.7;color:var(--ink-soft)}.rsvp__delivery{margin:0;font-family:var(--font-sans);font-weight:300;font-size:11px;line-height:1.7;letter-spacing:.04em;color:#ffb59ad9}.button-gold{min-height:52px;border:none;border-radius:999px;background:linear-gradient(100deg,#ffdd8f,#e8b62e);color:var(--ink);font-family:var(--font-sans);font-size:10.5px;letter-spacing:.32em;text-transform:uppercase;cursor:pointer;transition:transform .12s ease}.button-gold:active{transform:scale(.985)}.button-gold:disabled{opacity:.6;cursor:progress}.button-quiet{min-height:46px;padding:0 26px;background:none;border:1px solid var(--ink-rule);border-radius:999px;font-family:var(--font-sans);font-size:9.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--gilt);cursor:pointer;transition:border-color .16s ease}.button-quiet:hover{border-color:var(--wine-soft)}.footer{color:var(--ink-soft);padding:40px 26px 150px;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}.footer__arabic{font-family:var(--font-arabic);font-size:17px;color:var(--gilt)}.footer__hairline{width:1px;height:28px;background:linear-gradient(to bottom,var(--ink-rule),transparent)}.footer__meta{font-family:var(--font-sans);font-size:9.5px;letter-spacing:.3em;text-transform:uppercase}.footer__directions{font-family:var(--font-sans);font-size:10.5px;letter-spacing:.16em;text-decoration:none;border-bottom:1px solid var(--ink-rule);padding-bottom:3px}.cta{position:sticky;bottom:0;padding:12px 20px calc(20px + env(safe-area-inset-bottom));background:linear-gradient(to top,#2a0d0cf5 40%,#2a0d0c00);transition:opacity .26s ease,transform .26s ease}.cta--hidden{opacity:0;transform:translateY(100%);pointer-events:none}.cta__button{width:100%;letter-spacing:.3em;box-shadow:0 10px 30px #0006}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}:root{--ease-majestic: cubic-bezier(.19, 1, .22, 1);--dur-seq: 1.1s;--dur-flap: 1.7s;--dur-zoom: 2.6s;--ease-draw: cubic-bezier(.05, .7, .1, 1);--ease-reveal: cubic-bezier(.22, .61, .36, 1);--ease-zoom: cubic-bezier(.42, 0, .28, 1);--ease-flap: cubic-bezier(.34, .02, .2, 1.02);--dur-recede: 1.1s}.stage{position:relative;min-height:100dvh;overflow-x:hidden;--card-w: calc(min(430px, calc(.97 * var(--S))) - 30px) ;--card-half: calc(var(--card-w) / 2);background:radial-gradient(62% 34% at -6% 18%,#92585466,#92585400 68%),radial-gradient(52% 30% at -4% 74%,#78604657,#78604600 66%),radial-gradient(62% 34% at 106% 30%,#9258545c,#92585400 68%),radial-gradient(52% 30% at 104% 82%,#78604652,#78604600 66%),radial-gradient(120% 60% at 50% 108%,#c67a4a33,#c67a4a00 70%),radial-gradient(100% 80% at 50% 42%,#f0d9d3,#d9b6af 88%)}@media(min-width:1000px)and (min-height:620px){.stage{background:radial-gradient(220px 32% at -40px 20%,#92585466,#92585400 68%),radial-gradient(190px 28% at -30px 76%,#78604657,#78604600 66%),radial-gradient(220px 32% at calc(100% + 40px) 28%,#9258545c,#92585400 68%),radial-gradient(190px 28% at calc(100% + 30px) 84%,#78604652,#78604600 66%),radial-gradient(120% 60% at 50% 108%,#c67a4a33,#c67a4a00 70%),radial-gradient(100% 80% at 50% 42%,#f0d9d3,#d9b6af 88%)}}.stage__glow{position:fixed;left:50%;top:50%;width:780px;height:620px;margin:-310px 0 0 -390px;background:radial-gradient(50% 50% at 50% 50%,rgba(255,190,110,.3),transparent 70%);pointer-events:none;z-index:0;opacity:.75;transform:scale(.8);transition:opacity var(--dur-recede) var(--ease-majestic),transform var(--dur-recede) var(--ease-majestic)}.stage--sealed .stage__glow{animation:flicker 7s ease-in-out infinite}.stage--opening .stage__glow,.stage--open .stage__glow{opacity:1;transform:scale(1.25)}:root{--S: min(100vw, 100dvh);--env-fit: .915;--ease-unroll: cubic-bezier(.34, .14, .26, 1);--t-top: 0ms;--t-left: .38s;--t-right: .47s;--t-bottom: .76s;--d-top: 1s;--d-side: .82s;--d-bottom: .8s;--t-hand: 1.26s;--d-hand-w: .78s;--d-hand-h: .95s;--t-ink: 1.62s}.env{position:relative;min-height:100dvh}.env__scene{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none}.env__rect{position:absolute;left:50%;top:50%;width:calc(var(--rect-fw) * var(--env-fit) * var(--S));height:calc(var(--rect-fh) * var(--env-fit) * var(--S));margin-left:calc((var(--rect-cx) - .5 * var(--rect-fw)) * var(--env-fit) * var(--S));margin-top:calc((var(--rect-cy) - .5 * var(--rect-fh)) * var(--env-fit) * var(--S));transform-style:flat}.env__sheet{position:absolute;top:0;right:0;bottom:0;left:0;box-shadow:inset 0 2px 9px #6048424d,inset 0 -1px 5px #60484229,inset 3px 0 7px #60484224,inset -3px 0 7px #60484224}.env__sheet img{display:block;width:100%;height:100%}.env__panel{position:absolute;left:var(--px);top:var(--py);width:var(--pw);height:var(--ph);perspective:calc(var(--S) * 1.9)}.env__panel--left{--px: var(--left-left);--py: var(--left-top);--pw: var(--left-w);--ph: var(--left-h)}.env__panel--right{--px: var(--right-left);--py: var(--right-top);--pw: var(--right-w);--ph: var(--right-h)}.env__panel--bottom{--px: var(--bottom-left);--py: var(--bottom-top);--pw: var(--bottom-w);--ph: var(--bottom-h)}.env__panel--top{--px: var(--top-left);--py: var(--top-top);--pw: var(--top-w);--ph: var(--top-h)}.env__leaf{position:absolute;top:0;right:0;bottom:0;left:0;transform-style:flat;transform-origin:var(--ox) var(--oy)}.env__panel--top .env__leaf{--ox: var(--top-ox);--oy: var(--top-oy)}.env__panel--bottom .env__leaf{--ox: var(--bottom-ox);--oy: var(--bottom-oy)}.env__panel--left .env__leaf{--ox: var(--left-ox);--oy: var(--left-oy)}.env__panel--right .env__leaf{--ox: var(--right-ox);--oy: var(--right-oy)}.env__face{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.env__face--front{opacity:1}.env__face--back{opacity:0}.env__panel--top .env__face--back,.env__panel--bottom .env__face--back{transform:scaleY(-1)}.env__panel--left .env__face--back,.env__panel--right .env__face--back{transform:scaleX(-1)}.env__shade{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;pointer-events:none;background-image:var(--shade-plate);background-size:100% 100%;background-repeat:no-repeat}.stage--sealed .env__shade,.stage--opening .env__shade{will-change:opacity}.env__panel--top .env__shade--back,.env__panel--bottom .env__shade--back{transform:scaleY(-1)}.env__panel--left .env__shade--back,.env__panel--right .env__shade--back{transform:scaleX(-1)}@keyframes face-top-front{0%,65.077%{opacity:1}65.087%,to{opacity:0}}@keyframes face-top-back{0%,65.077%{opacity:0}65.087%,to{opacity:1}}@keyframes shade-top-front{0%{opacity:0}10%{opacity:0}16%{opacity:.002}24%{opacity:.015}34%{opacity:.049}44%{opacity:.097}54%{opacity:.152}62%{opacity:.201}65.077%{opacity:.22}65.087%,to{opacity:0}}@keyframes shade-top-back{0%,65.077%{opacity:0}65.087%{opacity:.22}70%{opacity:.194}80%{opacity:.131}89%{opacity:.068}96%{opacity:.034}to{opacity:.03}}@keyframes face-left-front{0%,59.135%{opacity:1}59.145%,to{opacity:0}}@keyframes face-left-back{0%,59.135%{opacity:0}59.145%,to{opacity:1}}@keyframes shade-left-front{0%{opacity:0}12%{opacity:.003}28%{opacity:.029}46%{opacity:.12}59.135%{opacity:.22}59.145%,to{opacity:0}}@keyframes shade-left-back{0%,59.135%{opacity:0}59.145%{opacity:.22}64%{opacity:.187}80%{opacity:.09}92%{opacity:.043}to{opacity:.03}}@keyframes face-right-front{0%,59.737%{opacity:1}59.747%,to{opacity:0}}@keyframes face-right-back{0%,59.737%{opacity:0}59.747%,to{opacity:1}}@keyframes shade-right-front{0%{opacity:0}12%{opacity:.002}28%{opacity:.026}46%{opacity:.113}59.737%{opacity:.22}59.747%,to{opacity:0}}@keyframes shade-right-back{0%,59.737%{opacity:0}59.747%{opacity:.22}64%{opacity:.19}80%{opacity:.093}92%{opacity:.044}to{opacity:.031}}@keyframes face-bottom-front{0%,59.838%{opacity:1}59.848%,to{opacity:0}}@keyframes face-bottom-back{0%,59.838%{opacity:0}59.848%,to{opacity:1}}@keyframes shade-bottom-front{0%{opacity:0}7%{opacity:0}16%{opacity:.001}30%{opacity:.022}46%{opacity:.103}59.838%{opacity:.22}59.848%,to{opacity:0}}@keyframes shade-bottom-back{0%,59.838%{opacity:0}59.848%{opacity:.22}62%{opacity:.203}78%{opacity:.095}91%{opacity:.041}to{opacity:.031}}@keyframes fold-top{0%{transform:rotateX(0)}6%{transform:rotateX(-1.4deg)}10%{transform:rotateX(0)}16%{transform:rotateX(7deg)}24%{transform:rotateX(21deg)}34%{transform:rotateX(39deg)}44%{transform:rotateX(56deg)}54%{transform:rotateX(72deg)}62%{transform:rotateX(85deg)}70%{transform:rotateX(98deg)}80%{transform:rotateX(118deg)}89%{transform:rotateX(143deg)}96%{transform:rotateX(168deg)}to{transform:rotateX(177deg)}}@keyframes fold-left{0%{transform:rotateY(0)}12%{transform:rotateY(-9deg)}28%{transform:rotateY(-30deg)}46%{transform:rotateY(-63deg)}64%{transform:rotateY(-100deg)}80%{transform:rotateY(-133deg)}92%{transform:rotateY(-159deg)}to{transform:rotateY(-176deg)}}@keyframes fold-right{0%{transform:rotateY(0)}12%{transform:rotateY(8deg)}28%{transform:rotateY(28deg)}46%{transform:rotateY(61deg)}64%{transform:rotateY(99deg)}80%{transform:rotateY(132deg)}92%{transform:rotateY(158deg)}to{transform:rotateY(175deg)}}@keyframes fold-bottom{0%{transform:rotateX(0)}7%{transform:rotateX(2deg)}16%{transform:rotateX(-6deg)}30%{transform:rotateX(-26deg)}46%{transform:rotateX(-58deg)}62%{transform:rotateX(-95deg)}78%{transform:rotateX(-131deg)}91%{transform:rotateX(-160deg)}to{transform:rotateX(-175deg)}}.stage--opening .env__panel--top .env__leaf,.stage--open .env__panel--top .env__leaf{animation:fold-top var(--d-top) linear var(--t-top) both}.stage--opening .env__panel--left .env__leaf,.stage--open .env__panel--left .env__leaf{animation:fold-left var(--d-side) linear var(--t-left) both}.stage--opening .env__panel--right .env__leaf,.stage--open .env__panel--right .env__leaf{animation:fold-right var(--d-side) linear var(--t-right) both}.stage--opening .env__panel--bottom .env__leaf,.stage--open .env__panel--bottom .env__leaf{animation:fold-bottom var(--d-bottom) linear var(--t-bottom) both}.stage--opening .env__panel--top .env__face--front,.stage--open .env__panel--top .env__face--front{animation:face-top-front var(--d-top) linear var(--t-top) both}.stage--opening .env__panel--top .env__face--back,.stage--open .env__panel--top .env__face--back{animation:face-top-back var(--d-top) linear var(--t-top) both}.stage--opening .env__panel--left .env__face--front,.stage--open .env__panel--left .env__face--front{animation:face-left-front var(--d-side) linear var(--t-left) both}.stage--opening .env__panel--left .env__face--back,.stage--open .env__panel--left .env__face--back{animation:face-left-back var(--d-side) linear var(--t-left) both}.stage--opening .env__panel--right .env__face--front,.stage--open .env__panel--right .env__face--front{animation:face-right-front var(--d-side) linear var(--t-right) both}.stage--opening .env__panel--right .env__face--back,.stage--open .env__panel--right .env__face--back{animation:face-right-back var(--d-side) linear var(--t-right) both}.stage--opening .env__panel--bottom .env__face--front,.stage--open .env__panel--bottom .env__face--front{animation:face-bottom-front var(--d-bottom) linear var(--t-bottom) both}.stage--opening .env__panel--bottom .env__face--back,.stage--open .env__panel--bottom .env__face--back{animation:face-bottom-back var(--d-bottom) linear var(--t-bottom) both}.stage--opening .env__panel--top .env__shade--front,.stage--open .env__panel--top .env__shade--front{animation:shade-top-front var(--d-top) linear var(--t-top) both}.stage--opening .env__panel--top .env__shade--back,.stage--open .env__panel--top .env__shade--back{animation:shade-top-back var(--d-top) linear var(--t-top) both}.stage--opening .env__panel--left .env__shade--front,.stage--open .env__panel--left .env__shade--front{animation:shade-left-front var(--d-side) linear var(--t-left) both}.stage--opening .env__panel--left .env__shade--back,.stage--open .env__panel--left .env__shade--back{animation:shade-left-back var(--d-side) linear var(--t-left) both}.stage--opening .env__panel--right .env__shade--front,.stage--open .env__panel--right .env__shade--front{animation:shade-right-front var(--d-side) linear var(--t-right) both}.stage--opening .env__panel--right .env__shade--back,.stage--open .env__panel--right .env__shade--back{animation:shade-right-back var(--d-side) linear var(--t-right) both}.stage--opening .env__panel--bottom .env__shade--front,.stage--open .env__panel--bottom .env__shade--front{animation:shade-bottom-front var(--d-bottom) linear var(--t-bottom) both}.stage--opening .env__panel--bottom .env__shade--back,.stage--open .env__panel--bottom .env__shade--back{animation:shade-bottom-back var(--d-bottom) linear var(--t-bottom) both}.env__glow{position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;opacity:0;pointer-events:none;background:radial-gradient(50% 44% at 50% 48%,#ffe7be42,#ffca911a 52%,#ffb46e00 78%);transition:opacity .9s var(--ease-draw) .26s}.stage--opening .env__glow,.stage--open .env__glow{opacity:1}@keyframes scene-recede{0%{opacity:1;transform:scale(1)}62%{opacity:.34;transform:scale(1.2)}to{opacity:0;transform:scale(1.34)}}.stage--opening .env__scene,.stage--open .env__scene{animation:scene-recede .9s var(--ease-reveal) calc(var(--t-bottom) + var(--d-bottom)) both}.env__hit{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5;width:100%;height:100%;padding:0;border:none;background:transparent;cursor:pointer;-webkit-tap-highlight-color:transparent}.env__hit:focus-visible{outline:2px solid var(--wine);outline-offset:-6px}.env__stage{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3;display:flex;align-items:center;justify-content:center;perspective:calc(var(--S) * 2.4);pointer-events:none}.cardwrap{position:relative;width:100%;padding:0 15px;max-width:calc(var(--card-w) + 30px);pointer-events:auto}.card{position:relative;height:calc(100dvh - 34px);transform-origin:50% 0;background:var(--paper);font-family:var(--font-serif);color:var(--ink);border-radius:1.5px;overflow:hidden;color-scheme:light;-webkit-font-smoothing:auto;box-shadow:0 0 0 1px #4a3b3812,0 0 3px #3a282633,0 2px 4px -2px #3a28264d,9px 5px 10px -6px #3a28262e,14px 8px 22px -8px #3a282638}@keyframes card-width{0%{opacity:0;transform:translate(var(--fold-dx)) scaleX(var(--fold-sx))}50%{opacity:1}to{opacity:1;transform:none}}@keyframes card-height{0%{transform:translateY(var(--fold-dy)) scaleY(var(--fold-sy))}to{transform:none}}.stage--sealed .cardwrap{opacity:0;transform:translate(var(--fold-dx)) scaleX(var(--fold-sx));pointer-events:none}.stage--sealed .card{transform:translateY(var(--fold-dy)) scaleY(var(--fold-sy))}.stage:not(.stage--sealed):not(.stage--instant) .cardwrap{animation:card-width var(--d-hand-w) var(--ease-unroll) var(--t-hand) both}.stage:not(.stage--sealed):not(.stage--instant) .card{animation:card-height var(--d-hand-h) var(--ease-unroll) var(--t-hand) both}.stage--instant .cardwrap,.stage--open .cardwrap{opacity:1}.stage--instant .cardwrap{animation:none;transform:none}.stage--open .card{overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}.card::-webkit-scrollbar{display:none}@keyframes ink-in{0%{visibility:hidden;opacity:0}to{visibility:visible;opacity:1}}.card__ink{isolation:isolate;background-color:var(--paper);background-image:var(--paper-emboss);background-size:150px auto;background-repeat:repeat}.stage--sealed .card__ink{visibility:hidden;opacity:0}.stage:not(.stage--sealed):not(.stage--instant) .card__ink{animation:ink-in .62s var(--ease-reveal) var(--t-ink) both}.stage--instant .card__ink{animation:none;visibility:visible;opacity:1}.stage--sealed .hero .rise{animation:none;opacity:0}.stage:not(.stage--sealed):not(.stage--instant) .hero .rise{animation:rise .8s var(--ease-majestic) both;animation-delay:2.2s}.stage:not(.stage--sealed):not(.stage--instant) .hero .rise--1{animation-delay:2.27s}.stage:not(.stage--sealed):not(.stage--instant) .hero .rise--2{animation-delay:2.34s}.stage:not(.stage--sealed):not(.stage--instant) .hero .rise--3{animation-delay:2.41s}.stage:not(.stage--sealed):not(.stage--instant) .hero .rise--4{animation-delay:2.48s}.stage--sealed .hero .rise{opacity:0}.stage--instant .hero .rise{animation:none;opacity:1;transform:none}.stage__forwhom{position:fixed;left:50%;bottom:calc(100% - var(--env-top, 30dvh) + 26px);z-index:4;margin:0;transform:translate(-50%);width:min(86vw,460px);text-align:center;text-wrap:balance;color:var(--wine);text-shadow:0 1px 0 rgba(255,255,255,.55);pointer-events:none;animation:rise-centred 1.6s var(--ease-majestic) .42s both}.stage__forwhom-lead{display:block;font-family:var(--font-serif);font-style:italic;font-weight:300;font-size:15px;font-weight:600;letter-spacing:.24em;text-transform:lowercase;opacity:.8;margin-bottom:-2px}.stage__forwhom-name{display:block;font-family:var(--font-flourish);font-weight:400;-webkit-text-stroke:.7px currentColor;font-size:min(52px,calc(var(--S) * .122));line-height:1.18}@keyframes forwhom-exit{0%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(-12px)}}.stage--opening .stage__forwhom{animation:forwhom-exit .42s var(--ease-reveal) both}.stage__open{position:fixed;left:50%;top:calc(var(--env-bottom, 70dvh) + 30px);z-index:4;background:none;border:none;cursor:pointer;font-family:var(--font-sans);font-size:13px;letter-spacing:.26em;text-transform:uppercase;color:#7e1d2e;font-weight:700;display:flex;flex-direction:column;align-items:center;gap:6px;text-shadow:0 1px 0 rgba(255,255,255,.55);transform:translate(-50%);animation:rise-centred 1.6s var(--ease-majestic) .7s both,nudge-up 2.4s var(--ease-majestic) 2.3s infinite;transition:opacity .7s ease,transform .7s var(--ease-majestic)}@keyframes nudge-up{0%,62%,to{transform:translate(-50%)}76%{transform:translate(-50%,-5px)}88%{transform:translate(-50%,-1px)}}.stage__open:hover{color:#4e1233}@keyframes prompt-exit{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,14px)}}.stage--opening .stage__open{animation:prompt-exit .42s var(--ease-reveal) both;pointer-events:none}@keyframes rise-centred{0%{opacity:0;transform:translate(-50%,18px)}to{opacity:1;transform:translate(-50%)}}.hero__names,.schedule__title,.rsvp__title{font-family:var(--font-script);font-weight:400;color:var(--gilt);letter-spacing:.01em;line-height:1.18}.hero__names{font-size:62px;text-shadow:none}.hero__names span{font-family:var(--font-serif);font-style:italic;font-size:.34em;color:var(--gilt);letter-spacing:.1em}.schedule__title,.rsvp__title{font-size:40px}.hero__day{font-family:var(--font-script);color:var(--gilt)}.hero,.footer{position:relative;isolation:isolate}.footer>*{position:relative;z-index:1}.hero__body{position:relative;z-index:1}.notes,.countdown,.rsvp{position:relative;isolation:isolate}.notes>*,.countdown>*,.rsvp>*{position:relative;z-index:1}.button-wax{min-height:52px;border:none;border-radius:999px;background:linear-gradient(158deg,#9c2438,var(--wine) 62%,#63131f);color:#fdf4ef;font-family:var(--font-sans);font-size:10.5px;letter-spacing:.32em;text-transform:uppercase;cursor:pointer;box-shadow:0 8px 20px #7e1d2e47;transition:transform .12s ease}.button-wax:active{transform:scale(.985)}.button-wax:disabled{opacity:.6;cursor:progress}.cta{background:linear-gradient(to top,#fbf3f0f7 46%,#fbf3f000)}.cta__button{box-shadow:0 8px 22px #7e1d2e42}.card a{color:var(--gilt)}.card a:hover{color:var(--ink)}.footer__directions{border-bottom-color:var(--wine-soft)}.rsvp__delivery{color:#8a2a12}.gate__names{font-family:var(--font-script);font-weight:400;color:var(--gilt);font-size:48px}.gate .button-gold{background:linear-gradient(158deg,#9c2438,var(--wine) 62%,#63131f);color:#fdf4ef;box-shadow:0 8px 20px #7e1d2e42}.gate__body{z-index:1}.blessing,.schedule{position:relative;isolation:isolate}.blessing>*,.schedule>*{position:relative;z-index:1}.hero__occasion{font-family:var(--font-script);font-size:30px;color:var(--gilt);line-height:1.2;margin-top:2px}.hero__bismillah{font-family:var(--font-arabic);font-size:clamp(15px,5.1vw,22px);line-height:1.9;text-align:center;white-space:nowrap;color:var(--gilt);margin-bottom:10px}.monogram{background-image:var(--monogram);background-repeat:no-repeat;background-position:center;background-size:contain}.monogram--hero{width:46px;height:52px;margin-bottom:2px}.monogram--divider{width:20px;height:23px;opacity:.75}.monogram--thanks{width:44px;height:50px}.hero,.blessing,.schedule,.notes,.countdown,.rsvp,.footer{position:relative;isolation:isolate}.hero>*,.blessing>*,.schedule>*,.notes>*,.countdown>*,.rsvp>*,.footer>*{position:relative;z-index:1}.stage--sealed .cardwrap,.stage--opening .cardwrap,.stage--sealed .env__leaf,.stage--opening .env__leaf{will-change:transform}@media(prefers-reduced-motion:reduce){.stage--opening .env__scene,.stage--open .env__scene{display:none}.stage:not(.stage--sealed) .cardwrap,.stage:not(.stage--sealed) .card,.stage:not(.stage--sealed) .card__ink,.stage:not(.stage--sealed) .hero .rise{animation:none!important;transform:none!important;visibility:visible!important;opacity:1!important}}.hero__guest{font-family:var(--font-sans);font-weight:300;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--gilt);max-width:min(80vw,320px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gate--checking{opacity:0;animation:gate-waiting .6s ease-out .4s forwards}@keyframes gate-waiting{to{opacity:1}}.gate--notice .gate__hint{max-width:320px}@media(prefers-reduced-motion:reduce){.gate--checking{animation:none;opacity:1}}.hero__names{font-family:var(--font-flourish);font-weight:400;font-size:min(78px,calc((var(--card-w) - 56px) / 4.094));line-height:1.12;letter-spacing:0;color:var(--gilt);text-shadow:none;position:relative;left:-.104em}.hero__names span{display:block;margin:6px 0 8px;font-family:var(--font-serif);font-style:italic;font-weight:300;font-size:30px;line-height:1;letter-spacing:.06em;color:var(--gilt)}.hero__names span{display:block;margin:-18px 0 0;font-family:var(--font-flourish);font-style:normal;font-weight:400;font-size:34px;line-height:1;letter-spacing:0;color:var(--gilt);position:relative;left:.074em}.hero__day{font-family:var(--font-serif);font-weight:300;font-size:46px;line-height:.86;letter-spacing:-.04em;color:var(--gilt)}.hero__guest{font-family:var(--font-script);font-weight:400;font-size:23px;letter-spacing:0;text-transform:none;color:var(--gilt)}.hero__arabic{font-size:21px;color:var(--ink-soft)}.hero__eyebrow{letter-spacing:.32em}.hero__weekday{font-size:10px;letter-spacing:.28em;color:var(--gilt)}.hero__month{font-size:23px;color:var(--gilt)}.blessing__reading{margin:14px auto 0;max-width:300px;font-family:var(--font-serif);font-style:italic;font-size:15px;line-height:1.6;color:var(--ink-soft);text-align:center}.bar{position:sticky;bottom:0;z-index:3;display:flex;align-items:center;gap:10px;padding:12px 15px calc(12px + env(safe-area-inset-bottom,0px));background:linear-gradient(180deg,rgba(251,243,240,0),var(--paper) 42%);transition:transform .42s var(--ease-draw),opacity .3s ease}.bar--hidden{transform:translateY(120%);opacity:0;pointer-events:none}.bar__reply{flex:1;min-height:52px}.bar__side{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:56px;min-height:52px;border:1px solid var(--ink-hair);border-radius:2px;background:var(--paper);font-family:var(--font-sans);font-weight:300;font-size:8.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);text-decoration:none}.bar__side:hover{color:var(--gilt);border-color:var(--wine-soft)}.bar__glyph{font-size:14px;line-height:1;color:var(--gilt)}.hero__invites{margin-top:14px;font-family:var(--font-sans);font-weight:300;font-size:9.5px;letter-spacing:.32em;text-transform:uppercase;line-height:1.9;color:var(--ink-soft)}.bar{background:var(--paper);border-top:1px solid var(--ink-hair)}.monogram--hero{width:76px;height:93px;background-size:contain;background-repeat:no-repeat;background-position:center}.monogram--divider{width:34px;height:35px;background-image:var(--monogram-letters);background-size:contain;background-repeat:no-repeat;background-position:center}@media(min-width:740px)and (min-height:740px){.stage{--card-w: min(620px, calc(.97 * var(--S)), calc((100dvh - 34px) * 5 / 7))}.cardwrap{max-width:calc(var(--card-w) + 30px)}.card{height:auto;aspect-ratio:5 / 7}}.flora{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden;--gutter: calc(50vw - var(--card-half));--bite: 24px}.flora__stem{position:absolute;top:var(--top);width:calc(var(--scale) * var(--gutter));aspect-ratio:2 / 3;rotate:0deg;translate:0 calc(var(--scroll, 0) * var(--rate) * -1);scale:.88;opacity:0;transform-origin:50% 100%;animation:flora-sway var(--sway) ease-in-out var(--delay) infinite;transition:scale 1.5s var(--ease-majestic),opacity 1.5s var(--ease-majestic)}.flora__stem.is-open{scale:1;opacity:1}.flora__stem--left{right:calc(50vw + var(--card-half) - var(--bite))}.flora__stem--right{left:calc(50vw + var(--card-half) - var(--bite))}.flora__ink{width:100%;height:100%;background-color:var(--ink);-webkit-mask-image:var(--mask);mask-image:var(--mask);-webkit-mask-size:contain;mask-size:contain;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.flora__stem--near .flora__ink{opacity:.5}.flora__stem--mid .flora__ink{opacity:.36;filter:blur(1.1px)}.flora__stem--far .flora__ink{opacity:.24;filter:blur(2.4px)}@keyframes flora-sway{0%,to{rotate:calc(var(--swing) * -1)}50%{rotate:var(--swing)}}.bloom{position:absolute;z-index:0;height:auto;pointer-events:none;-webkit-user-select:none;user-select:none}.bloom--orchid{width:min(430px,calc(1.16 * var(--card-w)));left:50%;translate:-50%;top:-21px}.bloom--calla{width:min(142px,calc(.4 * var(--card-w)));right:-30px;top:-46px}.bloom--lemon-one{width:min(118px,calc(.34 * var(--card-w)));left:-44px;top:-30px}.bloom--lemon-two{width:min(138px,calc(.4 * var(--card-w)));right:-40px;bottom:16px}.bloom--lemons{width:min(172px,calc(.48 * var(--card-w)));left:-34px;bottom:16px}.loading{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;background:var(--paper);animation:loading-in .26s ease-out both}@keyframes loading-in{0%{opacity:0}to{opacity:1}}.loading__mark{font-family:var(--font-arabic),serif;font-size:17px;letter-spacing:.02em;color:var(--wine);opacity:.85}.loading__track{position:relative;width:min(168px,44vw);height:1px;background:var(--ink-hair);overflow:hidden}.loading__fill{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--wine);transform-origin:0 50%;transform:scaleX(0);transition:transform .2s var(--ease-reveal)}@media(prefers-reduced-motion:reduce){.loading{animation:none}}@keyframes bar-in{0%{opacity:0}to{opacity:1}}.stage--sealed .bar{opacity:0}.stage:not(.stage--sealed):not(.stage--instant) .bar{animation:bar-in .3s var(--ease-reveal) 2.24s both}.stage--instant .bar{animation:none;opacity:1}@media(prefers-reduced-motion:reduce){.stage:not(.stage--sealed) .bar{animation:none!important;opacity:1!important}}.rsvp__optional{margin-left:6px;font-size:.85em;letter-spacing:.18em;text-transform:lowercase;color:var(--ink-soft);opacity:.75}
