@font-face{font-family:Marcellus;font-style:normal;font-display:swap;font-weight:400;src:url(./marcellus-latin-400-normal-86dSXJnk.woff2) format("woff2"),url(./marcellus-latin-400-normal-AvMY561b.woff) format("woff")}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(./eb-garamond-latin-400-normal-BCNrxLz_.woff2) format("woff2"),url(./eb-garamond-latin-400-normal-maQnHeKB.woff) format("woff")}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url(./eb-garamond-latin-400-italic-DSEbMgZu.woff2) format("woff2"),url(./eb-garamond-latin-400-italic-CDFyLPXJ.woff) format("woff")}@font-face{font-family:Amiri Quran;font-style:normal;font-display:swap;font-weight:400;src:url(./amiri-quran-arabic-400-normal-wRcqfVJx.woff2) format("woff2"),url(./amiri-quran-arabic-400-normal-CZ144KtP.woff) format("woff")}:root{--ivory: #f5eedf;--paper: #fbf7ee;--sand: #ede2ca;--ink: #2b2318;--ink-soft: #5b4c36;--gold: #b08c47;--gold-deep: #7b5b21;--gold-lt: #d9bd80;--guide: #9a8f7a;--rule: rgba(176, 140, 71, .42);--night: #142338;--on-night: #efe6d3;--display: "Marcellus", "Times New Roman", serif;--text: "EB Garamond", Garamond, Georgia, serif;--arabic: "Amiri Quran", "Amiri", "Traditional Arabic", "Times New Roman", serif;--gutter: clamp(20px, 5vw, 64px);--space: clamp(64px, 7vw, 104px)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--text);font-size:19px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body.is-locked{overflow:hidden}main:focus{outline:none}a{color:inherit}p{margin:0}.nb{white-space:nowrap}h2,.invitation__line,.verse__english,.rsvp__lead,.invitation__hosts,.footer__hosts,.invitation__parents{text-wrap:balance}.amp{font-family:var(--text);font-style:italic;font-weight:400;color:var(--gold-deep)}:focus-visible{outline:2px solid var(--gold-deep);outline-offset:4px}.kicker{margin:0 0 12px;font-family:var(--display);font-size:13px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-deep)}h1,h2{font-family:var(--display);font-weight:400;margin:0}h2{font-size:clamp(36px,8.6vw,60px);line-height:1.06;margin-bottom:18px}.section{padding:var(--space) var(--gutter);text-align:center}.geo{display:block;overflow:visible}.geo .g-guide{fill:none;stroke:var(--guide);stroke-width:.75}.geo .g-guides{opacity:.42;transition:opacity .6s ease}.geo .g-prick{fill:var(--guide)}.geo .g-line{fill:none;stroke:var(--gold);stroke-width:1.35;stroke-linejoin:round;stroke-linecap:round}.geo .g-line--fine{stroke-width:.85}.field{display:block}.field__lines{fill:none;stroke:var(--gold);stroke-width:1}.rosette{width:var(--size);height:var(--size);margin:0 auto 24px}.is-armed .g-draw{stroke-dasharray:1 1;stroke-dashoffset:1}.is-armed .g-guides{opacity:.9}.is-armed .g-prick,.is-armed .spandrel{opacity:0}.is-armed.is-built .g-draw{stroke-dashoffset:0;transition:stroke-dashoffset var(--t, .5s) cubic-bezier(.5,0,.25,1) var(--d, 0s)}.is-armed.is-built .g-prick{opacity:1;transition:opacity .3s ease .2s}.is-armed.is-built .spandrel{opacity:1;transition:opacity .7s ease .6s}.is-armed [data-rise]{opacity:0;transform:translateY(14px)}.is-armed.is-built [data-rise]{opacity:1;transform:none;transition:opacity .5s ease var(--rise-d, .1s),transform .5s cubic-bezier(.2,.7,.2,1) var(--rise-d, .1s)}.cover{display:none}.js .cover{position:fixed;inset:0;z-index:40;display:grid;place-items:center;background:var(--ivory);overflow:hidden}.cover[hidden]{display:none!important}.cover__field{position:absolute;inset:0;opacity:.6;-webkit-mask-image:radial-gradient(ellipse 64% 48% at 50% 50%,transparent 50%,#000 90%);mask-image:radial-gradient(ellipse 64% 48% at 50% 50%,transparent 50%,#000 90%);animation:field-in 1.4s ease both}.cover__field .field{width:100%;height:100%}.cover__field .field__lines{stroke-width:1}@keyframes field-in{0%{opacity:0;transform:scale(1.04)}to{opacity:.6;transform:none}}.cover__frame{position:absolute;inset:14px;border:1px solid var(--rule);outline:1px solid var(--rule);outline-offset:-7px;pointer-events:none}.cover__inner{position:relative;display:grid;justify-items:center;padding:24px;text-align:center}.cover__eyebrow{font-family:var(--display);font-size:13px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold-deep)}.cover__names{margin:10px 0 30px;font-family:var(--display);font-size:clamp(40px,11vw,66px);line-height:1.05}.seal{position:relative;width:168px;height:168px;padding:0;border:0;border-radius:50%;background:none;cursor:pointer;filter:drop-shadow(0 12px 18px rgba(98,72,25,.28));-webkit-tap-highlight-color:transparent}.seal:after{content:"";position:absolute;inset:-2px;border-radius:50%;border:1px solid var(--gold);opacity:0;animation:seal-pulse 2.8s ease-out 1.6s infinite;pointer-events:none}@keyframes seal-pulse{0%{transform:scale(1);opacity:.7}70%,to{transform:scale(1.32);opacity:0}}.seal__host,.seal__art{display:block;width:100%;height:100%}.seal__rim{fill:none;stroke:#fbf5e6;stroke-width:1;opacity:.7}.seal__rim--thin{stroke-width:.6;opacity:.45}.seal .g-line{fill:none;stroke:#fbf5e6;stroke-width:1.4;stroke-linejoin:round}.seal .g-line--fine{stroke-width:.9;opacity:.85}.seal__initials{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--display);font-size:20px;letter-spacing:.02em;color:#fffaf0;text-shadow:0 1px 1px rgba(80,56,14,.45)}.seal__initials i{font-family:var(--text);font-size:.82em;margin:0 .06em}.cover__hint{margin-top:24px;font-style:italic;font-size:17px;color:var(--ink-soft)}.cover__foot{position:absolute;left:0;right:0;bottom:calc(34px + env(safe-area-inset-bottom));text-align:center;font-family:var(--display);font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft)}.cover__plate{display:inline-block;padding:7px 16px;border:1px solid var(--rule);background:var(--ivory)}.cover__ring{position:absolute;left:50%;top:50%;width:0;height:0;border:1.5px solid var(--gold);border-radius:50%;opacity:0;transform:translate(-50%,-50%);pointer-events:none}.cover.is-opening{-webkit-mask-image:radial-gradient(circle at var(--cx, 50%) var(--cy, 50%),transparent var(--hole, 0px),#000 calc(var(--hole, 0px) + 1px));mask-image:radial-gradient(circle at var(--cx, 50%) var(--cy, 50%),transparent var(--hole, 0px),#000 calc(var(--hole, 0px) + 1px))}.hero{padding:max(14px,env(safe-area-inset-top)) var(--gutter) 10px}.hero__frame{position:relative;max-width:600px;min-height:calc(100svh - 28px);margin:0 auto;display:grid;align-content:center;padding:calc(var(--rise, 130px) * .5) 26px 44px;text-align:center}.hero__arch{position:absolute;inset:0;pointer-events:none}.hero__arch .geo{position:absolute;inset:0}.hero__content{position:relative}.bismillah{font-family:var(--arabic);font-size:clamp(30px,8.2vw,44px);line-height:1.9;color:var(--gold-deep)}.bismillah__gloss{margin-top:8px;font-style:italic;font-size:16px;color:var(--ink-soft)}.hero__rosette{width:64px;height:64px;margin:26px auto 22px}.hero__names{display:grid;font-size:clamp(56px,16.5vw,108px);line-height:.98}.hero__names .amp{font-size:.56em;line-height:1.2}.hero__date{margin-top:28px;font-size:21px}.hero__place{margin-top:2px;font-style:italic;font-size:19px;color:var(--ink-soft)}.invitation{max-width:720px;margin:0 auto}.invitation__hosts{font-family:var(--display);font-size:clamp(23px,5.8vw,32px);line-height:1.25}.invitation__line{max-width:30ch;margin:12px auto 22px;font-style:italic;font-size:clamp(20px,5vw,24px);line-height:1.45;color:var(--ink-soft)}.invitation__name{font-family:var(--display);font-size:clamp(40px,10.5vw,62px);line-height:1.05}.pair{position:relative;max-width:560px;margin-inline:auto;padding:14px 0 6px}.invitation__name--bride{color:var(--gold-deep);font-size:clamp(50px,14vw,78px)}.invitation__name--groom{font-size:clamp(42px,11.5vw,66px)}.pair__with{display:flex;align-items:center;justify-content:center;gap:14px;margin:2px 0 6px}.pair__word{display:inline-block;font-style:italic;font-size:34px;line-height:1;color:var(--gold-deep);transform:rotate(-7deg)}.pair__star{display:block;width:30px;height:30px}.pair__star .g-line{stroke:var(--gold);stroke-width:1.4}.pair__star .geo{animation:turn 14s linear infinite}.pair__star--r .geo{animation-direction:reverse}.sparkle{position:absolute;left:var(--x);top:var(--y);width:var(--s);height:var(--s);pointer-events:none}.sparkle svg{display:block;width:100%;height:100%;fill:var(--gold);animation:twinkle 2.6s ease-in-out var(--k, 0s) infinite}@keyframes twinkle{0%,to{transform:scale(.55) rotate(0);opacity:.35}50%{transform:scale(1) rotate(45deg);opacity:1}}.is-armed [data-from=right]{transform:translate(56px)}.is-armed [data-from=left]{transform:translate(-56px)}.is-armed [data-from=pop]{transform:scale(.6)}.is-armed .pair__star--l{transform:translate(-70px) rotate(-180deg)}.is-armed .pair__star--r{transform:translate(70px) rotate(180deg)}.is-armed .sparkle{opacity:0;transform:scale(0)}.is-armed.is-built [data-from]{transition:opacity .45s ease var(--rise-d, .1s),transform .8s cubic-bezier(.34,1.56,.5,1) var(--rise-d, .1s)}.pair__star,.sparkle{transition:transform .9s cubic-bezier(.34,1.4,.5,1) .45s,opacity .4s ease .45s}.is-armed.is-built .pair__star{transform:none}.is-armed.is-built .sparkle{opacity:1;transform:none;transition-delay:.8s}.invitation__parents{margin-top:14px;font-size:19px;color:var(--ink-soft)}.verse{padding-block:0;background:var(--sand)}.verse__band{height:34px;margin-inline:calc(var(--gutter) * -1);border-block:1px solid var(--rule);opacity:.75}.verse__band .field{width:100%;height:100%}.verse__body{margin:0 auto;max-width:760px;padding-block:calc(var(--space) * .8)}.verse blockquote{margin:0}.verse__arabic{font-family:var(--arabic);font-size:clamp(32px,8.4vw,50px);line-height:2;color:var(--ink)}.verse__english{max-width:30ch;margin:14px auto 0;font-style:italic;font-size:clamp(21px,5.2vw,27px);line-height:1.4}.verse__cite{margin-top:20px;font-family:var(--display);font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-deep)}.window{position:relative;max-width:640px;margin:0 auto;padding:calc(var(--rise, 130px) * .34) 30px 40px}.window__arch{position:absolute;inset:0;pointer-events:none}.window__arch .geo{position:absolute;inset:0}.window__head,.window__rows,.window .button{position:relative}.rosette--small{margin-bottom:16px}.window__rows{margin:8px 0 28px}.row{padding:16px 0;border-top:1px solid var(--rule)}.row:last-child{border-bottom:1px solid var(--rule)}.row dt{font-family:var(--display);font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-deep)}.row dd{margin:4px 0 0}.row strong{display:block;font-family:var(--display);font-weight:400;font-size:27px;line-height:1.2}.row span{font-style:italic;color:var(--ink-soft)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 28px;border:1px solid var(--gold);border-radius:2px;background:transparent;box-shadow:inset 0 0 0 3px var(--ivory),inset 0 0 0 4px #b08c4773;color:var(--ink);font-family:var(--display);font-size:14px;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background-color .2s ease,color .2s ease}.button:hover{background:#b08c471f}.button--night{color:var(--on-night);border-color:var(--gold-lt);box-shadow:inset 0 0 0 3px var(--night),inset 0 0 0 4px #d9bd8073}.button--night:hover{background:#d9bd8024}.venue{position:relative;isolation:isolate;overflow:hidden;background:var(--night);color:var(--on-night)}.venue__field{position:absolute;inset:0;z-index:-1;opacity:.17}.venue__field .field{width:100%;height:100%}.venue .field__lines{stroke:var(--gold-lt)}.venue__inner{max-width:640px;margin:0 auto}.venue .kicker{color:var(--gold-lt)}.venue h2{color:#f4e8cb}.rosette--night .g-line{stroke:var(--gold-lt)}.rosette--night .g-guide{stroke:#8e95a6}.rosette--night .g-prick{fill:#8e95a6}.venue__address{margin:0 0 28px;font-style:normal;font-size:21px;line-height:1.6}.venue__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.venue .status{color:var(--gold-lt)}.countdown__grid{display:grid;grid-template-columns:repeat(2,minmax(0,148px));justify-content:center;gap:14px 18px;margin-top:26px}.unit{position:relative;display:grid;place-content:center;aspect-ratio:1;text-align:center}.unit__frame{position:absolute;inset:0}.unit__frame .geo{width:100%;height:100%}.unit strong{position:relative;font-family:var(--display);font-weight:400;font-size:46px;line-height:1;font-variant-numeric:tabular-nums}.unit>span:last-child{position:relative;margin-top:6px;font-family:var(--display);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-deep)}.rsvp{max-width:760px;margin:0 auto}.rsvp__lead{max-width:32ch;margin:0 auto 28px;font-size:20px;color:var(--ink-soft)}.contacts{max-width:560px;margin:0 auto;padding:0;list-style:none;text-align:left;border-top:1px solid var(--rule)}.contact{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;padding:16px 2px;border-bottom:1px solid var(--rule)}.contact__who strong{display:block;font-family:var(--display);font-weight:400;font-size:22px;line-height:1.25}.contact__who a{color:var(--ink-soft);font-size:19px;font-variant-numeric:tabular-nums;text-decoration:none}.contact__actions{display:flex;gap:8px}.chip{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid var(--gold);border-radius:999px;color:var(--ink);font-family:var(--display);font-size:13px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;transition:background-color .2s ease}.chip:hover{background:#b08c471f}.status{min-height:1.5em;margin-top:14px;font-style:italic;color:var(--gold-deep)}.footer{padding:56px var(--gutter) calc(76px + env(safe-area-inset-bottom));background:var(--night);color:var(--on-night);text-align:center}.footer .rosette{margin-bottom:20px}.footer__with{font-style:italic;font-size:21px;color:var(--gold-lt)}.footer__hosts{margin-top:6px;font-family:var(--display);font-size:23px}.footer__hosts .amp,.venue .amp{color:var(--gold-lt)}.footer__credit{margin-top:26px;font-size:15px;color:#efe6d3d1}.footer__credit a{color:var(--gold-lt)}.music-toggle{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:30;display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:0 18px 0 13px;border:1px solid var(--gold);border-radius:999px;background:#fbf7eef0;box-shadow:0 8px 20px #3c2c1024;color:var(--ink);font-family:var(--display);font-size:13px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.music-toggle[hidden]{display:none}.music-toggle__icon{display:block;width:22px;height:22px}.music-toggle__icon .g-line{stroke:var(--gold-deep);stroke-width:1.3}.music-toggle[aria-pressed=true] .music-toggle__icon .geo{animation:turn 18s linear infinite}@keyframes turn{to{transform:rotate(360deg)}}@media(min-width:760px){.window{max-width:760px}.hero__frame{max-width:560px}.hero__names{font-size:clamp(56px,7vw,92px)}.hero__rosette{margin:20px auto 16px}.row strong{font-size:25px}.countdown__grid{grid-template-columns:repeat(4,148px);gap:22px}.window__rows{display:grid;grid-template-columns:repeat(3,1fr)}.row{padding:10px 18px;border-top:0;border-left:1px solid var(--rule)}.row:first-child{border-left:0}.row:last-child{border-bottom:0}.window__rows{border-block:1px solid var(--rule);padding-block:14px}}@media(max-width:640px){:root{--space: 56px}.music-toggle{width:46px;padding:0;justify-content:center}.music-toggle__label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.contact__actions{width:100%}.contact__actions .chip{flex:1;justify-content:center}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cover__field{animation:none}.seal:after{animation:none}.music-toggle[aria-pressed=true] .music-toggle__icon .geo{animation:none}.pair__star .geo,.sparkle svg{animation:none}}
