:root{--sans:"Jost", "Noto Sans Malayalam", "Noto Sans Tamil", "Noto Sans Devanagari", system-ui, -apple-system, "Segoe UI", sans-serif;--arabic:"Amiri", "Scheherazade New", "Traditional Arabic", serif;--ease:cubic-bezier(.22, .61, .36, 1)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--cream) var(--mottle);color:var(--ink);font-family:var(--serif);-webkit-font-smoothing:antialiased;font-size:17px;line-height:1.75;overflow-x:hidden}body.locked{height:100vh;overflow:hidden}img{max-width:100%;display:block}.art{pointer-events:none;z-index:1;width:min(100%,max(540px,60svh));height:100%;position:absolute;top:0;bottom:0;left:50%;overflow:visible;translate:-50%}.orn{pointer-events:none;margin:0 auto;display:block;overflow:visible}.orn[data-art=divider]{width:240px;height:52px;margin:14px auto}.orn[data-art=bouquet]{width:100%;height:210px;margin-top:26px}.hero>:not(.halo):not(.art):not(.scroll-cue){z-index:2;max-width:min(100%,max(430px,48svh));position:relative}.hero .halo{z-index:0}.hero .scroll-cue{z-index:2}.gate{z-index:60;background:var(--cream);transition:opacity .9s .35s,visibility .9s .35s;position:fixed;inset:0;overflow:hidden}.gate.gone{opacity:0;visibility:hidden;pointer-events:none}.gate-bg{background:var(--mottle), radial-gradient(circle at 50% 38%, var(--gate-glow) 0%, transparent 55%), linear-gradient(168deg, var(--gate-1) 0%, var(--gate-2) 46%, var(--gate-3) 100%);transition:transform 1.1s cubic-bezier(.19,1,.22,1),filter 1.1s;animation:14s ease-in-out infinite alternate gateZoom;position:absolute;inset:0;transform:scale(1.08)}@keyframes gateZoom{0%{transform:scale(1.06)}to{transform:scale(1.14)}}.gate.gone .gate-bg{transform:scale(1.3)}.gate-fade{background:linear-gradient(to bottom, rgba(var(--shade), .1) 0%, rgba(var(--shade), .04) 32%, rgba(var(--shade), .08) 62%, rgba(var(--shade), .2) 100%);transition:opacity .9s .15s;position:absolute;inset:0}.gate-vignette{background:radial-gradient(ellipse at center, transparent 34%, rgba(var(--shade), .22) 100%);pointer-events:none;transition:opacity .9s .15s;position:absolute;inset:0}.gate.gone .gate-fade,.gate.gone .gate-vignette{opacity:0}@media (width>=700px) and (height>=860px){html{font-size:clamp(16px,1.9svh,24px)}}@media (height<=700px){#gate .gate-content{padding-bottom:15vh}}.gate-content{z-index:2;cursor:pointer;width:100%;max-width:max(540px,60svh);height:100%;color:inherit;-webkit-tap-highlight-color:transparent;text-align:center;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:0;margin:0 auto;padding:40px 46px;font-family:inherit;display:flex;position:relative}@keyframes gateDown{0%{opacity:0;filter:blur(6px);transform:translateY(-16px)scale(.94)}to{opacity:1;filter:blur();transform:none}}@keyframes gateUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes gateIn{0%{opacity:0}to{opacity:1}}.gate-bismillah{font-family:"Aref Ruqaa", var(--arabic);color:var(--gold-deep);opacity:0;direction:rtl;margin-bottom:10px;font-size:clamp(1.3rem,min(9.4vw,4.4vh),3.1rem);line-height:1.6;animation:1.6s cubic-bezier(.19,1,.22,1) .3s forwards gateDown}.gate-label{font-family:var(--sans);letter-spacing:.4em;text-transform:uppercase;color:var(--gold-deep);opacity:0;margin-bottom:16px;font-size:11px;animation:1s 1.2s forwards gateUp}.gate-names{font-family:var(--script);font-weight:400;font-style:var(--sstyle);font-size:calc(clamp(1.5rem, min(11.4vw, 5.3vh), 3.6rem) * var(--ss) * var(--fit,1));color:var(--gold-deep);opacity:0;margin-bottom:12px;line-height:1.08;animation:1.1s 1.4s forwards gateUp}.gate-amp{color:var(--leaf);font-size:.95em;font-style:normal;line-height:1.25;display:block}.gate-date{font-family:var(--sans);letter-spacing:.3em;text-transform:uppercase;color:var(--ink-soft);opacity:0;margin-bottom:5vh;font-size:clamp(12px,2vw,14px);animation:1s 1.6s forwards gateUp}.gate-tap{opacity:0;place-items:center;width:5.5rem;height:5.5rem;margin-bottom:16px;animation:1s 2s forwards gateIn;display:grid;position:relative}.gate-tap-ring{border:1px solid var(--gold);border-radius:50%;animation:2.2s ease-out infinite gateTapPulse;position:absolute;inset:0}@keyframes gateTapPulse{0%{opacity:.85;transform:scale(.82)}70%{opacity:0;transform:scale(1.25)}to{opacity:0;transform:scale(1.25)}}.gate-tap-seal{z-index:1;background:radial-gradient(circle at 34% 28%, var(--seal-1), var(--seal-2) 46%, var(--seal-3) 100%);width:4rem;height:4rem;box-shadow:0 8px 24px rgba(var(--shade), .45), inset 0 -3px 7px #00000038, inset 0 3px 7px #fff0c880;color:var(--seal-text);font-family:var(--script);border-radius:50%;place-items:center;font-size:1.5rem;line-height:1;display:grid;position:relative}.gate-tap-seal:after{content:"";border:1px dashed #fff8e1a6;border-radius:50%;position:absolute;inset:6px}.gate-tap-text{font-family:var(--sans);letter-spacing:.3em;text-transform:uppercase;color:var(--ink-soft);opacity:0;font-size:11px;animation:1s 2.1s forwards gateIn}.gate.gone .gate-content>*{transition:opacity .6s,transform .6s,filter .6s}.gate.gone .gate-bismillah{opacity:0;filter:blur(10px);animation:none;transform:translateY(-24px)scale(1.06)}.gate.gone .gate-label,.gate.gone .gate-date,.gate.gone .gate-tap,.gate.gone .gate-tap-text{opacity:0;animation:none;transform:translateY(-10px)}.gate.gone .gate-names{opacity:0;transition-delay:80ms;animation:none;transform:translateY(-10px)scale(1.04)}#yt{pointer-events:none;width:200px;height:200px;position:fixed;bottom:0;left:-9999px}.snd{z-index:70;cursor:pointer;background:var(--paper);width:44px;height:44px;color:var(--gold-deep);border:1px solid rgba(var(--line), .5);box-shadow:0 8px 20px -10px rgba(var(--shade), .6);border-radius:50%;place-items:center;display:none;position:fixed;bottom:16px;right:16px}.snd.on{display:grid}.snd svg{width:20px;height:20px}.snd .off{display:none}.snd.muted .off{display:block}.snd.muted .no{display:none}.wrap{max-width:640px;margin:0 auto;padding:0 22px}.panel{padding:74px 0;position:relative}.panel.tint{background:linear-gradient(180deg, transparent, var(--cream-deep) 18%, var(--cream-deep) 82%, transparent)}.center{text-align:center}.eyebrow{font-family:var(--caps);letter-spacing:.34em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:14px;font-size:.68rem;font-weight:500}h1,h2,h3{font-weight:400;line-height:1.2}h2{font-size:clamp(1.5rem,5.6vw,2.05rem)}.sub{color:var(--ink-soft);font-size:1rem;font-style:italic}.rv{opacity:0;transition:opacity 1s var(--ease), transform 1s var(--ease);transform:translateY(22px)}.rv.in{opacity:1;transform:none}.hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:max(100svh,740px);padding:60px 46px 40px;display:flex;position:relative;overflow:hidden}.hero .halo{aspect-ratio:1;background:radial-gradient(circle, var(--halo) 0%, transparent 62%);filter:blur(6px);pointer-events:none;border-radius:50%;width:min(120vw,760px);position:absolute}.bism{font-family:"Aref Ruqaa", var(--arabic);color:var(--gold-deep);direction:rtl;margin-bottom:6px;font-size:clamp(2rem,9.4vw,3.1rem);line-height:1.6}.bism-en{font-family:var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:34px;font-size:.6rem}.couple{font-family:var(--script);font-style:var(--sstyle);font-size:calc(clamp(2.2rem, 11.4vw, 3.6rem) * var(--ss) * var(--fit,1));color:var(--gold-deep);line-height:1.12}.amp{color:var(--leaf);font-size:.95em;line-height:1.25;display:block}.hero .date-lg{font-family:var(--sans);letter-spacing:.32em;text-transform:uppercase;color:var(--gold-deep);margin-top:28px;font-size:.74rem}.scroll-cue{font-family:var(--sans);letter-spacing:.3em;text-transform:uppercase;color:var(--muted);flex-direction:column;align-items:center;gap:8px;font-size:.58rem;animation:2.6s ease-in-out infinite bob;display:flex;position:absolute;bottom:96px;left:50%;translate:-50%}.scroll-cue:after{content:"";background:linear-gradient(var(--gold-soft), transparent);width:1px;height:30px}@keyframes bob{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,7px)}}.cd{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:34px;display:grid}.cd .u{background:var(--paper);border:1px solid rgba(var(--line), .5);outline:1px solid rgba(var(--line), .22);outline-offset:-4px;box-shadow:0 10px 26px -20px rgba(var(--shade), .7);border-radius:2px;padding:16px 6px 13px}.cd .n{font-family:var(--serif);color:var(--gold-deep);font-variant-numeric:tabular-nums;font-size:clamp(1.5rem,7vw,2.05rem);line-height:1}.cd .l{font-family:var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-deep);margin-top:9px;font-size:.53rem}.verse{text-align:center}.verse .ar{font-family:var(--arabic);color:var(--gold-deep);direction:rtl;font-size:clamp(1.3rem,5.4vw,1.75rem);line-height:2.2}.verse .en{color:var(--ink);margin-top:20px;font-size:1.06rem;font-style:italic}.verse .src{font-family:var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--ink-soft);margin-top:14px;font-size:.63rem}.note{color:var(--ink-soft);text-align:center;max-width:34ch;margin:0 auto;font-size:1.1rem}.note em{color:var(--ink);font-style:italic}.fam{grid-template-columns:1fr;gap:18px;margin-top:34px;display:grid}.fam .person{background:var(--paper);border:1px solid rgba(var(--line), .5);outline:1px solid rgba(var(--line), .22);outline-offset:-6px;text-align:center;overflow-wrap:normal;border-radius:2px;min-width:0;padding:30px 20px}.fam .who{font-family:var(--sans);letter-spacing:.34em;text-transform:uppercase;color:var(--gold-deep);font-size:.6rem}.fam .name{font-family:var(--script);font-style:var(--sstyle);font-size:calc(clamp(1.9rem, 8.2vw, 2.7rem) * var(--ss) * var(--fit,1));color:var(--gold-deep);overflow-wrap:normal;word-break:normal;-webkit-hyphens:none;hyphens:none;text-wrap:balance;margin:10px 0 16px;line-height:1.25}.fam .parents{color:var(--ink-soft);overflow-wrap:normal;font-size:1rem;line-height:1.85}.fam .parents span{font-family:var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin-bottom:7px;font-size:.6rem;display:block}.fam .parents strong{color:var(--ink);font-weight:500}.ev{background:var(--paper);text-align:center;box-shadow:0 20px 50px -34px rgba(var(--shade), .9);overflow-wrap:normal;min-width:0;margin-top:26px;padding:50px 34px 46px;position:relative}.ev .art{width:100%}.ev>:not(.art){z-index:2;position:relative}.ev .kind{font-family:var(--script);font-style:var(--sstyle);font-size:calc(clamp(2.4rem, 10vw, 3rem) * var(--ss));color:var(--gold-deep);line-height:1.1}.ev .rows{gap:16px;margin-top:22px;display:grid}.ev .row{min-width:0}.ev .row i{font-style:normal;font-family:var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:5px;font-size:.56rem;display:block}.ev .row b{color:var(--ink);overflow-wrap:normal;font-size:1.08rem;font-weight:400;line-height:1.6}.ev .row small{font-family:var(--sans);letter-spacing:.01em;color:var(--ink-soft);overflow-wrap:normal;max-width:92%;margin:4px auto 0;font-size:.72rem;line-height:1.65;display:block}.btn-map{font-family:var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--gold-deep);border:1px solid rgba(var(--line), .55);border-radius:2px;align-items:center;gap:9px;margin-top:26px;padding:13px 26px;font-size:.64rem;text-decoration:none;transition:background .3s,color .3s,border-color .3s;display:inline-flex}.btn-map:hover{background:var(--gold-deep);color:var(--on-accent);border-color:var(--gold-deep)}.btn-map svg{flex:none;width:14px;height:14px}.rsvp-card{background:var(--paper);text-align:left;margin-top:30px;padding:54px 34px 50px;position:relative}.rsvp-card .art{width:100%}.rsvp-card>:not(.art){z-index:2;position:relative}.field{z-index:1;margin-bottom:18px;position:relative}.field label{font-family:var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:8px;font-size:.58rem;display:block}.field input[type=text],.field input[type=tel],.field input[type=number],.field textarea,.field select{width:100%;font-family:var(--serif);color:var(--ink);background:var(--field);border:1px solid rgba(var(--line), .38);border-radius:3px;outline:none;padding:12px 14px;font-size:1.02rem;transition:border-color .25s,box-shadow .25s}.field textarea{resize:vertical;min-height:76px;line-height:1.6}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--gold-deep);box-shadow:0 0 0 3px rgba(var(--line), .16)}.choice{grid-template-columns:1fr 1fr;gap:10px;display:grid}.choice label{cursor:pointer;font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;border:1px solid rgba(var(--line), .38);background:var(--field);color:var(--ink-soft);border-radius:3px;justify-content:center;align-items:center;gap:8px;margin:0;padding:13px 8px;font-size:.66rem;transition:background .25s,border-color .25s,color .25s;display:flex}.choice input{opacity:0;pointer-events:none;position:absolute}.choice input:checked+span{color:var(--on-accent)}.choice label:has(input:checked){background:var(--gold-deep);border-color:var(--gold-deep);color:var(--on-accent)}.choice label:focus-within{box-shadow:0 0 0 3px rgba(var(--line), .2)}.events-choice{gap:10px;display:grid}.events-choice label{cursor:pointer;font-family:var(--sans);letter-spacing:.12em;text-transform:uppercase;border:1px solid rgba(var(--line), .3);background:var(--field);color:var(--ink-soft);border-radius:3px;align-items:center;gap:11px;margin:0;padding:13px 14px;font-size:.68rem;transition:border-color .25s,background .25s;display:flex}.events-choice label:has(input:checked){border-color:var(--gold-deep);background:var(--chip);color:var(--ink)}.events-choice input{accent-color:var(--gold-deep);flex:none;width:16px;height:16px}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.btn-submit{width:100%;font-family:var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--on-accent);background:var(--gold-deep);cursor:pointer;box-shadow:0 12px 26px -12px rgba(var(--shade), .85);transition:transform .3s var(--ease), opacity .3s;border:0;border-radius:2px;margin-top:8px;padding:16px;font-size:.7rem}.btn-submit:hover{transform:translateY(-2px)}.btn-submit:disabled{opacity:.6;cursor:default;transform:none}.form-msg{font-family:var(--sans);letter-spacing:.1em;text-align:center;margin-top:16px;font-size:.72rem;line-height:1.9;display:none}.form-msg.show{display:block}.form-msg.ok{color:var(--ok)}.form-msg.err{color:var(--err)}.closing{text-align:center}.closing .big{font-family:var(--script);font-style:var(--sstyle);font-size:calc(clamp(2.1rem, 9vw, 3rem) * var(--ss));color:var(--gold-deep);line-height:1.3}.foot{text-align:center;font-family:var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);padding:44px 22px 60px;font-size:.58rem}.foot .dua{font-family:var(--serif);letter-spacing:0;text-transform:none;color:var(--ink-soft);margin-bottom:18px;font-size:1rem;font-style:italic}.foot .credit{margin-top:26px}.foot .credit a{letter-spacing:.16em;color:var(--muted2);font-size:.52rem;text-decoration:none;transition:color .3s}.foot .credit a:hover{color:var(--gold-deep)}@media (width>=560px){.fam{grid-template-columns:1fr 1fr}.cd{gap:14px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.rv{opacity:1;transition:none;transform:none}.scroll-cue,.gate-bg,.gate-tap-ring{animation:none}.gate-bismillah,.gate-label,.gate-names,.gate-date,.gate-tap,.gate-tap-text{opacity:1!important;filter:none!important;animation:none!important;transform:none!important}}.ed{outline-offset:6px;cursor:pointer;border-radius:6px;outline:1.5px dashed #a8842fd9}.ed:hover{outline-style:solid}.ed:focus-visible{outline:2px solid #a8842f}.ev.ed{outline-offset:2px}.ed-add{font-family:var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--gold-deep);border:1.5px dashed var(--gold);cursor:pointer;background:0 0;border-radius:999px;margin:26px auto 0;padding:14px 26px;font-size:.72rem;display:block}.ed:active{opacity:.8;transition:opacity 80ms}.label.svelte-1an8lrf{font-family:var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:8px;font-size:.58rem;display:block}
