:root{--font-display: "Cormorant Garamond", "Times New Roman", serif;--font-names: "Playfair Display", Georgia, serif;--parchment: #f3eee0;--olive-ink: #3f4630;--font-urdu: "Noto Nastaliq Urdu", "Jameel Noori Nastaleeq", serif;--font-body: "Jost", system-ui, sans-serif;--gold: #e6c27a;--gold-deep: #b8892b;--ivory: #fff8ec;--night: #14070b;--ease-out: cubic-bezier(.22, 1, .36, 1);--radius: 18px;--shadow-lg: 0 30px 60px -20px rgba(0, 0, 0, .55), 0 12px 24px -12px rgba(0, 0, 0, .4);--gutter: clamp(16px, 4vw, 40px);--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;height:100%}body{background:var(--night);color:var(--ivory);font-family:var(--font-body);font-weight:400;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:6px}p{margin:0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.global-defs{position:absolute;width:0;height:0;overflow:hidden}.app{position:fixed;inset:0;overflow:hidden}.btn-primary{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:10px;min-height:52px;border-radius:999px;flex-direction:column;gap:0;padding:12px 40px 8px;border:4px solid #e2b85c;outline:3px solid rgba(226,184,92,.35);outline-offset:2px;background:linear-gradient(135deg,#7d8c58,#5f6f45 60%,#4c5a36);color:#fffbef;font-family:var(--font-display);font-size:1.3rem;font-weight:700;letter-spacing:.04em;box-shadow:0 12px 30px -10px #465528b3,inset 0 1px #ffffff59}.btn-shine{position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.65) 50%,transparent 70%);transform:translate(-120%);animation:shine 3.6s 3s ease-in-out infinite}@keyframes shine{0%,60%{transform:translate(-120%)}to{transform:translate(120%)}}.dock{position:fixed;top:calc(14px + var(--safe-top));right:14px;z-index:60;display:flex;gap:8px}.dock-btn{display:inline-flex;align-items:center;gap:8px;min-height:44px;min-width:44px;padding:0 16px;border-radius:999px;border:1px solid rgba(255,240,210,.3);background:#180a0e80;backdrop-filter:blur(10px) saturate(1.2);-webkit-backdrop-filter:blur(10px) saturate(1.2);color:#fff6e4;font-size:.95rem;font-weight:500;letter-spacing:.02em;transition:background .25s,transform .25s var(--ease-out),border-color .25s}.dock-btn:hover{background:#180a0eb3;border-color:#ffdc9699;transform:translateY(-1px)}.eq{display:inline-flex;align-items:flex-end;gap:2px;height:14px}.eq i{display:block;width:3px;height:4px;border-radius:2px;background:var(--gold);transition:height .3s}.music-btn.is-playing .eq i{animation:eq .9s ease-in-out infinite}.music-btn.is-playing .eq i:nth-child(2){animation-delay:-.3s}.music-btn.is-playing .eq i:nth-child(3){animation-delay:-.6s}.music-btn.is-playing .eq i:nth-child(4){animation-delay:-.15s}@keyframes eq{0%,to{height:4px}50%{height:14px}}.share{position:relative}.share-menu{position:absolute;right:0;top:calc(100% + 8px);min-width:250px;padding:8px;border-radius:16px;background:#fffaf0f7;color:#3a1a12;box-shadow:var(--shadow-lg);display:grid;gap:2px;transform-origin:top right}.share-item{display:flex;align-items:center;gap:10px;padding:12px;min-height:44px;border:0;border-radius:10px;background:transparent;color:inherit;text-decoration:none;font-size:.92rem;text-align:left}.share-item:hover,.share-item:focus-visible{background:#b8892b24}.share-item svg{color:#1f8f4e;flex:none}@media(max-width:520px){.dock-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.dock-btn{padding:0;justify-content:center}}.intro{position:absolute;inset:0;overflow:hidden;background:var(--parchment);color:var(--olive-ink)}.parchment{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 30%,#faf7ee,#f2ecdc 55%,#e7dfc8)}.parchment-stains{position:absolute;inset:0;background:radial-gradient(40% 30% at 18% 40%,rgba(196,184,140,.22),transparent 70%),radial-gradient(35% 25% at 82% 30%,rgba(170,182,150,.2),transparent 70%),radial-gradient(50% 30% at 60% 75%,rgba(205,190,150,.18),transparent 70%)}.parchment-grain{position:absolute;inset:0;opacity:.9}.eucalyptus{position:absolute;top:-6px;width:clamp(170px,30vw,360px);height:auto}.eucalyptus-left{left:-10px}.eucalyptus-right{right:-10px;transform:scaleX(-1)}@media(max-width:600px){.eucalyptus{width:108px;opacity:.85}.intro-lede,.intro-awaited{font-size:.95rem;letter-spacing:.04em}.intro-content{padding-top:calc(34px + var(--safe-top))}}.eucalyptus-sway{transform-origin:0 0;animation:leafSway 9s ease-in-out infinite}.intro-meadow{position:absolute;left:0;right:0;bottom:0;height:clamp(250px,44vh,520px);pointer-events:none}.meadow{width:100%;height:100%;display:block}.couple{transform-origin:20px 0;animation:coupleSway 8s ease-in-out infinite}@keyframes coupleSway{0%,to{transform:rotate(-.4deg)}50%{transform:rotate(.4deg)}}.dupatta-flutter{transform-origin:48px -300px;animation:flutterSoft 4.5s ease-in-out infinite}@keyframes flutterSoft{0%,to{transform:skew(0)}50%{transform:skew(-3deg)}}.intro-content{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;align-items:center;text-align:center;padding:calc(clamp(28px,7vh,80px) + var(--safe-top)) var(--gutter) 0}.intro-bismillah{font-family:var(--font-urdu);font-size:clamp(1.05rem,3.6vw,1.4rem);line-height:2.1;color:#7d8a5a}.intro-lede,.intro-awaited{font-family:var(--font-display);font-weight:600;font-size:clamp(1rem,3.6vw,1.2rem);letter-spacing:.12em;text-transform:uppercase;color:#6b6a4a}.intro-hosts{margin-top:6px;font-size:1rem;color:#6b6a4a}.intro-names{margin:clamp(6px,2vh,18px) 0 4px;font-family:var(--font-names);font-style:italic;font-weight:500;font-size:clamp(3rem,12vw,6.4rem);line-height:1.05;color:#55613a;display:flex;flex-wrap:wrap;justify-content:center;align-items:baseline;column-gap:.28em}.intro-amp{font-size:.6em;color:#9a8a4e}.intro-urdu{font-family:var(--font-urdu);font-size:clamp(1.1rem,4vw,1.45rem);line-height:2.1;color:#6b7a4a}.cta-wrap{position:relative;display:inline-flex;flex-direction:column;align-items:center;margin-top:clamp(8px,2vh,20px);padding-bottom:54px}.event-hero .cta-wrap{position:fixed;left:0;right:0;bottom:calc(8px + var(--safe-bottom));margin:0 auto;width:max-content;z-index:40;padding-bottom:62px}.event-hero .tap-below{bottom:0}.selection{position:absolute;inset:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:calc(84px + var(--safe-top)) var(--gutter) calc(40px + var(--safe-bottom));color:var(--olive-ink)}.selection-bg{position:fixed;inset:0;pointer-events:none}.selection>.particles{position:fixed}.selection-header{position:relative;z-index:2;text-align:center;margin-bottom:clamp(22px,5vh,52px)}.selection-names{font-family:var(--font-names);font-style:italic;font-weight:500;font-size:clamp(2rem,6vw,3rem);color:#55613a;line-height:1.2}.selection-names span{font-size:.65em;color:#9a8a4e}.selection-title{margin:6px 0 0;font-family:var(--font-display);font-weight:600;font-size:clamp(1.45rem,4.6vw,2.2rem);color:#3f4630}.selection-urdu{font-family:var(--font-urdu);font-size:clamp(1.1rem,4vw,1.4rem);line-height:2;color:#6b7a4a}.selection-hint{margin-top:2px;font-size:1rem;font-weight:500;color:#6b6a4a}.selection-hint span{font-family:var(--font-urdu);font-size:.95em}.envelope-row{position:relative;z-index:2;list-style:none;margin:0;padding:0;display:flex;gap:clamp(24px,4vw,56px);align-items:flex-start;justify-content:center}.envelope-item{display:flex;flex-direction:column;align-items:center;width:clamp(230px,26vw,340px)}.envelope-button{position:relative;display:block;width:100%;padding:0;border:0;background:none;perspective:1100px;border-radius:10px}.envelope-idle{animation:float 6s ease-in-out infinite;animation-delay:var(--float-delay, 0s)}@keyframes float{0%,to{transform:translateY(0) rotate(-.4deg)}50%{transform:translateY(-7px) rotate(.4deg)}}.envelope-float{transform-style:preserve-3d}.selection .env-shadow{background:#463c1e73}.envelope-label{margin-top:22px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:0}.envelope-urdu{font-family:var(--font-urdu);font-size:1.3rem;line-height:1.9;color:var(--label-accent)}.envelope-title{font-family:var(--font-display);font-size:clamp(1.6rem,3vw,2rem);font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#3f4630}.envelope-tagline{font-family:var(--font-display);font-style:italic;font-weight:500;font-size:1.1rem;color:#5e5d42}@media(max-width:860px){.selection{justify-content:flex-start}.envelope-row{flex-direction:column;align-items:center;gap:40px}.envelope-item{width:min(78vw,320px)}.envelope-label{margin-top:14px}}.env{position:relative;width:100%;aspect-ratio:300 / 210;container-type:inline-size;perspective:1000px}.env>*{position:absolute}.env svg{display:block}.env-shadow{left:4%;right:4%;bottom:-2%;height:30%;border-radius:50%;background:#0000008c;filter:blur(14px);transform:translateY(18%);transition:transform .4s var(--ease-out),opacity .4s}.env-back,.env-pocket{inset:0;width:100%;height:100%}.env-back{z-index:1;border-radius:6px}.env-card{z-index:2;left:5%;right:5%;top:4%;height:90%}.env-pocket{z-index:3;filter:drop-shadow(0 -1px 1.5px rgba(0,0,0,.18))}.env-flap{z-index:4;left:0;top:0;width:100%;height:61.9%;transform-origin:50% 0;transform-style:preserve-3d}.flap-face{position:absolute;inset:0;width:100%;height:100%;backface-visibility:hidden;-webkit-backface-visibility:hidden}.flap-front{filter:drop-shadow(0 3px 3px rgba(0,0,0,.22))}.flap-back{transform:rotateX(180deg)}.env-seal{z-index:5;left:39%;top:calc(56.2% - 11cqw);width:22%;aspect-ratio:1;filter:drop-shadow(0 3px 4px rgba(0,0,0,.35));transition:filter .4s}.env-seal svg{width:100%;height:100%}.seal-text{font-family:var(--font-display);font-weight:700;font-size:24px;letter-spacing:1px}.env-sheen{z-index:6;inset:0;border-radius:6px;pointer-events:none;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.32) 50%,transparent 65%);background-size:250% 100%;background-position:130% 0;opacity:0;transition:opacity .3s}.envelope-button:hover .env-sheen,.envelope-button:focus-visible .env-sheen{opacity:1;animation:sheen 1.4s var(--ease-out) forwards}.envelope-button:hover .env-seal,.envelope-button:focus-visible .env-seal{filter:drop-shadow(0 0 12px var(--glow)) drop-shadow(0 3px 4px rgba(0,0,0,.35))}.envelope-button:hover .env-shadow{transform:translateY(34%) scale(.92);opacity:.7}@keyframes sheen{0%{background-position:130% 0}to{background-position:-30% 0}}.card-face{position:relative;width:100%;height:100%;border-radius:4px;background:radial-gradient(ellipse at 50% 30%,var(--card-a),var(--card-b));box-shadow:0 2px 6px #0000002e;color:var(--card-ink);overflow:hidden}.card-frame{position:absolute;inset:4%;border:1px solid var(--card-accent);outline:1px solid var(--card-accent);outline-offset:-5px;border-radius:3px;opacity:.8}.card-content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:7%;text-align:center}.card-urdu{font-family:var(--font-urdu);font-size:6.4cqw;line-height:1.8;color:var(--card-accent)}.card-kicker{font-family:var(--font-display);font-size:3.4cqw;letter-spacing:.3em;text-transform:uppercase;font-weight:600}.card-names{margin-top:1.5cqw;font-family:var(--font-names);font-style:italic;font-weight:500;font-size:8cqw;line-height:1.1}.card-amp{font-family:var(--font-display);font-style:italic;font-size:.6em;margin:0 .25em;color:var(--card-accent)}.card-small{margin-top:1.4cqw;font-family:var(--font-display);font-style:italic;font-weight:600;font-size:3.4cqw;opacity:.85}.opening{position:fixed;inset:0;z-index:100;pointer-events:auto}.opening-backdrop{position:absolute;inset:0;opacity:0;background:radial-gradient(circle at 50% 62%,var(--tint) 0%,rgba(20,7,11,.55) 30%,rgba(10,4,7,.9) 70%);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}.opening-stage{position:absolute;perspective:1400px}.opening-env{position:relative;transform-origin:50% 50%;will-change:transform}.opening-env .env-card{will-change:transform}.opening-glint{position:absolute;left:50%;top:56%;width:40%;aspect-ratio:1;translate:-50% -50%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.95),rgba(255,230,170,.4) 35%,transparent 70%);opacity:0;pointer-events:none;z-index:7}.event-page{position:absolute;inset:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scroll-behavior:smooth}.event-scene-layer{position:fixed;inset:0;overflow:hidden;z-index:0}.scene-fallback{position:absolute;inset:0}.scene-fallback-mehndi{background:linear-gradient(#0a3324,#14583a 45%,#7a8a2a 75%,#3d8a3a)}.scene-fallback-barat{background:linear-gradient(#2a1035,#6e2148 35%,#c8505a 62%,#5c8f3a)}.scene-fallback-walima{background:linear-gradient(#c9dbea,#e3edf5 60%,#c4d6e6)}.scene-wrap{position:absolute;inset:0;transform-origin:50% 70%}.scene-svg{position:absolute;inset:0;width:100%;height:100%;display:block}.scene-dim{position:absolute;inset:0;background:#000;pointer-events:none}.event-walima .scene-dim{background:#1c2c3c}.event-scene-layer>.particles{position:absolute;z-index:1}.event-content{position:relative;z-index:2}.event-hero{position:relative;min-height:100svh;display:flex;flex-direction:column;align-items:center;padding:calc(84px + var(--safe-top)) var(--gutter) 0;text-align:center}.hero-inner{position:relative;display:flex;flex-direction:column;align-items:center}.hero-glow{position:absolute;left:50%;top:50%;width:150%;height:140%;translate:-50% -50%;z-index:-1;border-radius:50%;pointer-events:none}.hero-urdu{font-family:var(--font-urdu);font-size:clamp(1.4rem,5vw,2.2rem);line-height:2}.hero-title{margin:0;padding-left:.16em;font-family:var(--font-display);font-weight:700;font-size:clamp(1.2rem,4vw,1.6rem);letter-spacing:.16em;text-transform:uppercase}.hero-names-wrap{position:relative;margin-top:clamp(4px,1.5vh,14px);padding:clamp(26px,4vh,40px) clamp(28px,6vw,64px) clamp(4px,1vh,10px)}.hero-frame{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.hero-names{position:relative;font-family:var(--font-names);font-style:italic;font-weight:500;font-size:clamp(2.6rem,10vw,5rem);line-height:1.1}.hero-amp{display:inline-block;margin:0 .3em;font-family:var(--font-display);font-style:italic;font-size:.55em}.hero-when{margin:6px 0 8px;font-family:var(--font-display);font-weight:600;font-size:clamp(1rem,3vw,1.3rem);letter-spacing:.08em}.details-btn{outline:3px solid rgba(255,220,130,.45);outline-offset:2px;display:inline-flex;flex-direction:column;align-items:center;gap:0;min-height:56px;padding:10px 30px 6px;border-radius:999px;font-family:var(--font-display);font-size:1.15rem;font-weight:700;letter-spacing:.04em;text-shadow:none;box-shadow:0 10px 28px -10px #0000008c;transition:transform .25s var(--ease-out)}.details-btn:hover{transform:translateY(-2px)}.hero-mehndi,.hero-barat{color:#fff6e0;text-shadow:0 2px 14px rgba(0,0,0,.55),0 0 2px rgba(0,0,0,.3)}.hero-mehndi .hero-glow{background:radial-gradient(closest-side,rgba(6,40,24,.55),transparent)}.hero-barat .hero-glow{background:radial-gradient(closest-side,rgba(40,8,20,.5),transparent)}.hero-mehndi .hero-urdu,.hero-mehndi .hero-amp{color:#ffd166}.hero-barat .hero-urdu,.hero-barat .hero-amp{color:#f2cf7a}.hero-mehndi .details-btn{border:4px solid #f2c94c;background:linear-gradient(135deg,#1f8a52,#0b5232);color:#fff6d6}.hero-barat .details-btn{border:4px solid #fff1c4;background:linear-gradient(135deg,#f3d58a,#c99a36);color:#5c0a16}.hero-walima{color:#1f3448;text-shadow:0 0 18px rgba(255,255,255,.95),0 0 4px rgba(255,255,255,.9)}.hero-walima .hero-glow{background:radial-gradient(closest-side,rgba(255,255,255,.75),transparent)}.hero-walima .hero-urdu,.hero-walima .hero-amp{color:#6a8199}.hero-walima .details-btn{border:4px solid #e2c27a;background:linear-gradient(135deg,#5f7890,#3d5670);color:#fff}.details-overlay{position:fixed;inset:0;z-index:70;background:#0e0a088c;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.details-scroll{position:absolute;inset:0;overflow-y:auto;overscroll-behavior:contain;display:flex;justify-content:center;align-items:flex-start;padding:calc(24px + var(--safe-top)) 14px calc(32px + var(--safe-bottom));perspective:1200px}.details-card-wrap{width:min(100%,640px);margin:auto 0;display:flex;flex-direction:column;align-items:center;gap:20px;transform-origin:50% 100%}.panel-close{position:absolute;top:12px;right:12px;z-index:3;width:48px;height:48px;display:grid;place-items:center;border-radius:50%;border:1.5px solid var(--panel-border);background:#fffdf8;color:var(--ink);box-shadow:0 4px 12px -4px #0000004d;transition:transform .2s var(--ease-out),background .2s}.panel-close:hover{transform:rotate(90deg);background:#fff}.invite-panel{position:relative;width:min(100%,640px);padding:clamp(40px,7vw,64px) clamp(22px,6vw,60px);border-radius:6px;background:var(--panel-bg);color:var(--ink);text-align:center;box-shadow:var(--shadow-lg),inset 0 0 0 1px var(--panel-border),inset 0 0 0 7px #fff6,inset 0 0 0 8px var(--panel-border);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.corner{position:absolute;width:clamp(48px,10vw,74px);height:auto;opacity:.9}.corner.tl{top:14px;left:14px}.corner.tr{top:14px;right:14px;transform:scaleX(-1)}.corner.bl{bottom:14px;left:14px;transform:scaleY(-1)}.corner.br{bottom:14px;right:14px;transform:scale(-1)}.panel-kicker{font-family:var(--font-display);font-style:italic;font-weight:500;font-size:clamp(1.1rem,3vw,1.25rem);color:var(--ink-soft);max-width:34ch;margin:0 auto}.panel-title{margin:10px 0 0;display:flex;flex-direction:column;align-items:center;font-family:var(--font-display);font-weight:600;font-size:clamp(1.6rem,5vw,2.3rem);letter-spacing:.24em;padding-left:.24em;text-transform:uppercase;color:var(--ink)}.panel-urdu{font-family:var(--font-urdu);font-weight:400;font-size:.8em;letter-spacing:0;line-height:1.9;color:var(--accent)}.panel-names{margin-top:6px;font-family:var(--font-names);font-style:italic;font-weight:500;font-size:clamp(2.4rem,8vw,3.6rem);line-height:1.2;color:var(--ink)}.panel-names span{font-family:var(--font-display);font-style:italic;font-size:.55em;color:var(--accent)}.ornament-divider{display:block;margin:10px auto;max-width:100%}.detail-grid{margin:22px auto 0;display:grid;gap:18px;max-width:440px;text-align:left}.detail-row{display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:start}.detail-icon{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 55%,transparent);background:#ffffff8c}.detail-icon svg{width:22px;height:22px}.detail-label{display:flex;align-items:baseline;gap:10px;font-size:.85rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}.detail-value{margin-top:2px;font-family:var(--font-display);font-size:1.3rem;font-weight:600;line-height:1.3;color:var(--ink)}.venue-address{font-family:var(--font-body);font-weight:400;font-size:1.02rem;color:var(--ink-soft);margin-top:2px}.map-link{display:inline-flex;align-items:center;gap:6px;margin-top:6px;min-height:36px;font-family:var(--font-body);font-size:.86rem;font-weight:500;color:var(--accent);text-decoration:underline;text-underline-offset:4px}.panel-message{margin:26px auto 0;max-width:40ch;font-family:var(--font-display);font-style:italic;font-size:1.2rem;line-height:1.5;color:var(--ink-soft)}.rsvp{margin-top:26px}.panel-actions{margin-top:12px;display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.share-row{margin-top:28px;padding-top:22px;border-top:1px solid color-mix(in srgb,var(--accent) 35%,transparent)}.btn-themed{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 20px;border-radius:999px;border:1px solid var(--accent);background:var(--accent);color:#fff;font-size:.9rem;font-weight:500;letter-spacing:.03em;text-decoration:none;transition:transform .25s var(--ease-out),box-shadow .25s}.btn-themed:hover{transform:translateY(-1px);box-shadow:0 8px 20px -8px var(--accent)}.btn-themed.ghost{background:transparent;color:var(--ink)}.invite-walima .btn-themed:not(.ghost){background:#5f7890;border-color:#5f7890}.event-switch{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.switch-pill{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border-radius:999px;border:1px solid rgba(255,255,255,.4);background:#140a0c80;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff6e4;font-family:var(--font-display);font-size:1.05rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;transition:background .25s,transform .25s var(--ease-out)}.switch-pill:hover{transform:translateY(-1px);background:#140a0cb3}.switch-pill.active{cursor:default;background:#fff8eceb;color:#2a1a12}.switch-dot{width:10px;height:10px;border-radius:50%}.switch-mehndi .switch-dot{background:linear-gradient(135deg,#ffc93c,#1f7a4a)}.switch-barat .switch-dot{background:linear-gradient(135deg,#b3202f,#e3b55a)}.switch-walima .switch-dot{background:linear-gradient(135deg,#cfe3f2,#98a6b3)}.particles{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1}.particle{position:absolute;top:0;will-change:transform;animation:fall var(--dur) linear var(--delay) infinite}.particle-shape{display:block;width:var(--size);height:calc(var(--size) * .72);background:var(--c);animation:tumble calc(var(--dur) / 3) ease-in-out infinite alternate;box-shadow:inset -2px -2px 3px #0000002e}.particle-petal{border-radius:80% 0}.particle-rose{border-radius:60% 60% 40% 70%/70% 60% 50% 40%}.particle-sparkle{height:var(--size);background:radial-gradient(circle,#fff 0 18%,var(--c) 32%,transparent 70%);clip-path:polygon(50% 0,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0 50%,40% 40%);box-shadow:none;filter:drop-shadow(0 0 3px rgba(255,255,255,.9))}@keyframes fall{0%{transform:translate3d(0,-8vh,0)}to{transform:translate3d(var(--drift),108vh,0)}}@keyframes tumble{0%{transform:rotate(0) rotateX(0)}to{transform:rotate(calc(var(--spin) * 300deg)) rotateX(65deg)}}.sway,.sway-slow,.leaf-sway,.tree-sway{transform-origin:0 0}.sway{animation:sway 4.5s ease-in-out infinite}.sway-slow{animation:sway 6.5s ease-in-out infinite}.leaf-sway{animation:leafSway 5s ease-in-out infinite}.tree-sway{animation:treeSway 7s ease-in-out infinite}@keyframes sway{0%,to{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}@keyframes leafSway{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes treeSway{0%,to{transform:rotate(-.8deg)}50%{transform:rotate(.8deg)}}.twinkle{animation:twinkle 2.8s ease-in-out infinite}@keyframes twinkle{0%,to{opacity:1}50%{opacity:.35}}.flicker{animation:flicker 2.2s ease-in-out infinite}@keyframes flicker{0%,to{opacity:.9}30%{opacity:.65}60%{opacity:1}}.flame{transform-box:fill-box;transform-origin:50% 100%;animation:flame .9s ease-in-out infinite alternate}@keyframes flame{0%{transform:scale(1) skew(-3deg)}to{transform:scale(.9,1.18) skew(3deg)}}.glow-breathe{animation:glowBreathe 6s ease-in-out infinite}@keyframes glowBreathe{0%,to{opacity:.75}50%{opacity:1}}.crystal{animation:crystal 3s ease-in-out infinite}@keyframes crystal{0%,to{opacity:.75}45%{opacity:1;filter:drop-shadow(0 0 4px #fff)}55%{opacity:.85}}.window-glow{animation:windowOn 2s ease-out .3s both,windowFlicker 5s ease-in-out 2.5s infinite}@keyframes windowOn{0%{opacity:.2}to{opacity:1}}@keyframes windowFlicker{0%,to{opacity:1}50%{opacity:.85}}.car-bob{animation:carBob .5s ease-in-out infinite alternate}@keyframes carBob{to{transform:translateY(-1.5px)}}.ch-body{animation:bob 3.2s ease-in-out var(--d, 0s) infinite}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.ch-eyes{transform-box:fill-box;transform-origin:50% 50%;animation:blink 5.5s ease-in-out var(--d, 0s) infinite}@keyframes blink{0%,95%,to{transform:scaleY(1)}97%{transform:scaleY(.1)}}.arm-u,.arm-f{transform-origin:0 0}.ch-idle .arm-u,.ch-wave .arm-u.arm-l,.ch-greet .arm-u.arm-l{animation:idleU 4s ease-in-out var(--d, 0s) infinite}.ch-idle .arm-f,.ch-wave .arm-f.arm-l,.ch-greet .arm-f.arm-l{transform:rotate(12deg)}@keyframes idleU{0%,to{transform:rotate(-5deg)}50%{transform:rotate(-9deg)}}.ch-clap .arm-u{animation:clapU .55s ease-in-out var(--d, 0s) infinite alternate}.ch-clap .arm-f{animation:clapF .55s ease-in-out var(--d, 0s) infinite alternate}.ch-clap .ch-body{animation-duration:1.1s}@keyframes clapU{0%{transform:rotate(-8deg)}to{transform:rotate(-30deg)}}@keyframes clapF{0%{transform:rotate(122deg)}to{transform:rotate(98deg)}}.ch-dhol .ch-body{animation:dholBody .5s ease-in-out var(--d, 0s) infinite}.ch-dhol .arm-u.arm-r{animation:dholRU .5s ease-in-out var(--d, 0s) infinite}.ch-dhol .arm-f.arm-r{animation:dholRF .5s ease-in-out var(--d, 0s) infinite}.ch-dhol .arm-u.arm-l{animation:dholLU .25s ease-in-out var(--d, 0s) infinite alternate}.ch-dhol .arm-f.arm-l{animation:dholLF .25s ease-in-out var(--d, 0s) infinite alternate}@keyframes dholBody{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-4px) rotate(-1.2deg)}}@keyframes dholRU{0%,to{transform:rotate(-10deg)}50%{transform:rotate(-30deg)}}@keyframes dholRF{0%,to{transform:rotate(-18deg)}50%{transform:rotate(-85deg)}}@keyframes dholLU{0%{transform:rotate(-8deg)}to{transform:rotate(-20deg)}}@keyframes dholLF{0%{transform:rotate(-16deg)}to{transform:rotate(-58deg)}}.ch-dance .ch-body{animation:danceBody .9s ease-in-out var(--d, 0s) infinite}.ch-dance .arm-u.arm-r{animation:danceU .9s ease-in-out var(--d, 0s) infinite}.ch-dance .arm-u.arm-l{animation:danceU .9s ease-in-out calc(var(--d, 0s) - .45s) infinite}.ch-dance .arm-f{animation:danceF .45s ease-in-out var(--d, 0s) infinite alternate}@keyframes danceBody{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-7px) rotate(-3deg)}50%{transform:translateY(0) rotate(0)}75%{transform:translateY(-7px) rotate(3deg)}}@keyframes danceU{0%,to{transform:rotate(-150deg)}50%{transform:rotate(-122deg)}}@keyframes danceF{0%{transform:rotate(-8deg)}to{transform:rotate(-45deg)}}.ch-wave .arm-u.arm-r{transform:rotate(-145deg)}.ch-wave .arm-f.arm-r{animation:waveF .6s ease-in-out var(--d, 0s) infinite alternate}@keyframes waveF{0%{transform:rotate(-4deg)}to{transform:rotate(-42deg)}}.ch-greet .arm-u.arm-r{animation:greetU 6s ease-in-out var(--d, 0s) infinite}.ch-greet .arm-f.arm-r{animation:greetF 6s ease-in-out var(--d, 0s) infinite}@keyframes greetU{0%,12%,88%,to{transform:rotate(-5deg)}25%,75%{transform:rotate(18deg)}}@keyframes greetF{0%,12%,88%,to{transform:rotate(12deg)}25%,75%{transform:rotate(115deg)}}.ch-clasp .arm-u{transform:rotate(14deg)}.ch-clasp .arm-f{transform:rotate(76deg)}.ch-clasp .ch-body{animation:sway-body 5s ease-in-out var(--d, 0s) infinite}@keyframes sway-body{0%,to{transform:rotate(-1deg)}50%{transform:rotate(1deg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;animation-delay:0s!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.btn-en{line-height:1.2}.btn-ur{font-family:var(--font-urdu);font-size:.85em;font-weight:400;line-height:1.9}.btn-ur-inline,.detail-label-ur,.switch-ur,.dock-label [lang=ur],.map-link [lang=ur]{font-family:var(--font-urdu);font-weight:400;letter-spacing:0;text-transform:none;line-height:1.6}.detail-label-ur{font-size:1rem;color:var(--accent)}.switch-ur{font-size:.85rem}.tap-hint{position:absolute;pointer-events:none;z-index:8;width:42px;height:56px;opacity:0;animation:tapAppear .6s ease-out forwards}.tap-hand{position:absolute;inset:0;filter:drop-shadow(0 4px 5px rgba(0,0,0,.35));animation:tapPoint 1.3s ease-in-out infinite}.tap-hand-svg{display:block;width:42px;height:56px}.tap-ripple{position:absolute;left:13px;top:1px;width:28px;height:28px;margin-left:-14px;margin-top:-14px;border-radius:50%;border:2.5px solid rgba(255,255,255,.95);box-shadow:0 0 0 2px #00000026;animation:tapRipple 1.3s ease-out infinite}.tap-below{left:50%;bottom:-8px;margin-left:-13px}.tap-seal{left:50%;top:62%;margin-left:-13px}@keyframes tapAppear{to{opacity:1}}@keyframes tapPoint{0%,to{transform:translateY(6px) scale(1)}45%{transform:translateY(-4px) scale(.92)}55%{transform:translateY(-4px) scale(.92)}}@keyframes tapRipple{0%,40%{transform:scale(.3);opacity:0}50%{opacity:1}to{transform:scale(1.8);opacity:0}}.birds{position:absolute;inset:0;overflow:hidden}.bird{position:absolute;width:54px;left:-80px;animation:flyAcross 22s linear infinite}.bird svg{width:100%;display:block}.bird-a{top:30%;animation-delay:-4s}.bird-b{top:18%;width:42px;animation-duration:27s;animation-delay:-15s}.bird-c{top:42%;width:48px;animation-duration:30s;animation-delay:-9s;animation-direction:reverse}.bird-c svg{transform:scaleX(-1)}.bird-d{top:24%;width:38px;animation-duration:34s;animation-delay:-24s}.bird-wing,.bird-wing-back{transform-box:fill-box;transform-origin:0% 100%;animation:flap .45s ease-in-out infinite alternate}.bird-wing-back{transform-origin:100% 100%}@keyframes flap{0%{transform:scaleY(1)}to{transform:scaleY(-.4)}}@keyframes flyAcross{0%{transform:translate(0)}25%{transform:translate(30vw,-24px)}50%{transform:translate(60vw,10px)}75%{transform:translate(90vw,-16px)}to{transform:translate(calc(100vw + 160px))}}.smoke{transform-box:fill-box;transform-origin:50% 100%;animation:smoke 3.2s ease-out infinite both}@keyframes smoke{0%{transform:translateY(10px) scale(.6);opacity:0}25%{opacity:1}to{transform:translateY(-70px) scale(1.4);opacity:0}}.walker{transform-origin:0 0;opacity:0}.walker-out{animation:walkerOut 11s linear infinite}.walker-in{animation:walkerIn 11s linear -5.5s infinite}.walker-late.walker-out{animation-delay:-3s}.walker-late.walker-in{animation-delay:-8.5s}@keyframes walkerOut{0%{transform:translate(0) scale(.7);opacity:0}8%{opacity:1}85%{opacity:1}to{transform:translate(-110px,185px) scale(1.05);opacity:0}}@keyframes walkerIn{0%{transform:translate(150px,190px) scale(1.05);opacity:0}12%{opacity:1}88%{opacity:1}to{transform:translate(0) scale(.7);opacity:0}}.ch-walk .ch-body{animation:walkBob .5s ease-in-out var(--d, 0s) infinite}.ch-walk .arm-u.arm-r{animation:walkArm 1s ease-in-out var(--d, 0s) infinite}.ch-walk .arm-u.arm-l{animation:walkArm 1s ease-in-out calc(var(--d, 0s) - .5s) infinite}.ch-walk .arm-f{transform:rotate(14deg)}@keyframes walkBob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes walkArm{0%,to{transform:rotate(-16deg)}50%{transform:rotate(10deg)}}.ch-stir .arm-u.arm-r{animation:stirU 1.8s ease-in-out var(--d, 0s) infinite}.ch-stir .arm-f.arm-r{animation:stirF 1.8s ease-in-out var(--d, 0s) infinite}.ch-stir .arm-u.arm-l{transform:rotate(-5deg)}.ch-stir .arm-f.arm-l{transform:rotate(12deg)}@keyframes stirU{0%,to{transform:rotate(-62deg)}50%{transform:rotate(-80deg)}}@keyframes stirF{0%,to{transform:rotate(30deg)}50%{transform:rotate(52deg)}}.ch-fan .arm-u.arm-r{animation:fanU .4s ease-in-out var(--d, 0s) infinite alternate}.ch-fan .arm-f.arm-r{animation:fanF .4s ease-in-out var(--d, 0s) infinite alternate}.ch-fan .arm-u.arm-l{transform:rotate(-5deg)}.ch-fan .arm-f.arm-l{transform:rotate(12deg)}@keyframes fanU{0%{transform:rotate(-20deg)}to{transform:rotate(-34deg)}}@keyframes fanF{0%{transform:rotate(-10deg)}to{transform:rotate(-60deg)}}.walker-up{animation:walkerUp 13s linear infinite}.walker-up.walker-late{animation-delay:-6.5s}@keyframes walkerUp{0%{transform:translate(-30px,20px) scale(.95);opacity:0}10%{opacity:1}85%{opacity:1}to{transform:translate(10px,-285px) scale(.6);opacity:0}}.ch-offer .arm-u.arm-r{transform:rotate(-40deg)}.ch-offer .arm-f.arm-r{animation:offerF 3s ease-in-out var(--d, 0s) infinite}.ch-offer .arm-u.arm-l{transform:rotate(8deg)}.ch-offer .arm-f.arm-l{transform:rotate(30deg)}@keyframes offerF{0%,to{transform:rotate(8deg)}50%{transform:rotate(13deg)}}.ch-apply .arm-u.arm-r{animation:applyU 1.2s ease-in-out var(--d, 0s) infinite}.ch-apply .arm-f.arm-r{animation:applyF .6s ease-in-out var(--d, 0s) infinite alternate}.ch-apply .arm-u.arm-l{transform:rotate(-30deg)}.ch-apply .arm-f.arm-l{transform:rotate(-20deg)}@keyframes applyU{0%,to{transform:rotate(-76deg)}50%{transform:rotate(-84deg)}}@keyframes applyF{0%{transform:rotate(-6deg)}to{transform:rotate(-22deg)}}.ch-bhangra .ch-body{animation:bhangraBody .62s ease-in-out var(--d, 0s) infinite}.ch-bhangra .arm-u.arm-r{animation:bhangraR 1.24s ease-in-out var(--d, 0s) infinite}.ch-bhangra .arm-u.arm-l{animation:bhangraL 1.24s ease-in-out var(--d, 0s) infinite}.ch-bhangra .arm-f{animation:danceF .31s ease-in-out var(--d, 0s) infinite alternate}@keyframes bhangraBody{0%,to{transform:translateY(0) rotate(0)}30%{transform:translateY(-13px) rotate(-2deg)}60%{transform:translateY(-2px) rotate(2deg)}}@keyframes bhangraR{0%,to{transform:rotate(-168deg)}50%{transform:rotate(-112deg)}}@keyframes bhangraL{0%,to{transform:rotate(-112deg)}50%{transform:rotate(-168deg)}}.ch-face-side.ch-clap .arm-u{animation:sideClapU .55s ease-in-out var(--d, 0s) infinite alternate}.ch-face-side.ch-clap .arm-f{animation:sideClapF .55s ease-in-out var(--d, 0s) infinite alternate}.ch-face-side.ch-clap .arm-l{animation-delay:calc(var(--d, 0s) - .55s)}@keyframes sideClapU{0%{transform:rotate(-30deg)}to{transform:rotate(-46deg)}}@keyframes sideClapF{0%{transform:rotate(-60deg)}to{transform:rotate(-36deg)}}.ch-face-side.ch-apply .arm-u.arm-r{animation:none;transform:rotate(-60deg)}.ch-face-side.ch-apply .arm-f.arm-r{animation:sideApplyF .9s ease-in-out var(--d, 0s) infinite alternate}.ch-face-side.ch-apply .arm-u.arm-l{transform:rotate(-38deg)}.ch-face-side.ch-apply .arm-f.arm-l{transform:rotate(-70deg)}@keyframes sideApplyF{0%{transform:rotate(26deg)}to{transform:rotate(36deg)}}.invite-card{position:relative;width:min(100%,500px,calc((100svh - 150px)/1.28));aspect-ratio:500 / 640;container-type:inline-size;border-radius:18px;overflow:hidden;border:4px solid #e2b85c;box-shadow:0 0 0 3px #ffe2a066,0 30px 60px -20px #0009;color:var(--card-ink)}.card-art{position:absolute;inset:0;width:100%;height:100%;display:block}.card-close{position:absolute;top:3.2%;right:3.2%;z-index:3;width:40px;height:40px;display:grid;place-items:center;border-radius:50%;border:2.5px solid #e2b85c;background:#fffdf6f2;color:var(--card-ink);box-shadow:0 4px 10px -3px #0006;transition:transform .2s var(--ease-out)}.card-close:hover{transform:rotate(90deg)}.card-text{position:absolute;inset:15% 19%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;z-index:2}.ct-kicker{max-width:30ch;font-family:var(--font-display);font-weight:700;font-size:3.4cqw;line-height:1.3;letter-spacing:.04em;text-transform:uppercase}.ct-urdu{margin-top:.6cqw;font-family:var(--font-urdu);font-size:4.8cqw;line-height:1.9;color:var(--card-accent)}.ct-title{margin:0;font-family:var(--font-names);font-style:italic;font-weight:600;font-size:10.5cqw;line-height:1;color:var(--card-accent);display:flex;flex-direction:column;align-items:center}.ct-subtitle{margin-top:.8cqw;font-size:.5em;font-weight:500}.ct-honour{margin-top:2.2cqw;font-family:var(--font-display);font-weight:700;font-size:3.9cqw;letter-spacing:.03em}.ct-names{margin-top:.6cqw;display:flex;align-items:baseline;justify-content:center;gap:2cqw;white-space:nowrap;font-family:var(--font-names);font-style:italic;font-weight:600;font-size:8.8cqw;line-height:1.15;color:var(--card-accent)}.ct-amp{font-size:.5em;line-height:1.2;color:var(--card-ink)}.ct-strip{margin-top:9cqw;width:140%;display:grid;grid-template-columns:1fr auto 1fr;align-items:stretch;padding:1.6cqw 1.4cqw;border-radius:2.4cqw;border:.7cqw double var(--card-accent);background:#fffcf0e6;box-shadow:0 1cqw 2.4cqw -1.4cqw #00000059}.strip-cell{display:flex;align-items:center;gap:1.4cqw;padding:0 1cqw;color:var(--card-ink);text-decoration:none;text-align:left}.strip-icon{width:5.6cqw;height:5.6cqw;flex:none;color:var(--card-accent)}.strip-text{display:flex;flex-direction:column;font-size:3.1cqw;font-weight:500;line-height:1.3}.strip-text b{font-family:var(--font-display);font-size:3.9cqw;line-height:1.15;text-wrap:balance}.strip-small{text-transform:uppercase;letter-spacing:.08em;font-weight:600}.strip-divider{width:1px;background:var(--card-accent);opacity:.6}.strip-map{margin-top:.4cqw;font-weight:600;color:var(--card-accent);text-decoration:underline;text-underline-offset:2px}.strip-venue:hover .strip-map{color:var(--card-ink)}.seq-procession{animation:seqProcession 18s linear infinite}.procession-move{transform-origin:0 0;animation:processionMove 18s linear infinite}.seq-seated{animation:seqSeated 18s ease-out infinite}.seq-crowd{animation:seqCrowd 18s linear infinite}@keyframes seqProcession{0%,32%{opacity:1}38%,to{opacity:0}}@keyframes processionMove{0%{transform:translate(-10px,390px) scale(1.28)}33%,to{transform:translate(0) scale(1)}}@keyframes seqSeated{0%,33%{opacity:0;transform:translateY(-26px)}39%{opacity:1;transform:translateY(0)}96%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(0)}}@keyframes seqCrowd{0%,36%{opacity:0}43%,95%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.seq-seated,.seq-crowd{animation:none!important;opacity:1}.seq-procession{display:none}}.hero-plaque{position:relative;width:min(92vw,560px);padding:clamp(20px,3.4vh,30px) clamp(22px,5vw,44px) clamp(14px,2.4vh,22px);border-radius:50% 50% 18px 18px/46px 46px 18px 18px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='96' height='96' viewBox='0 0 96 96'%3E%3Cg fill='none' stroke='%23e8b93e' stroke-opacity='0.22' stroke-width='1.2'%3E%3Cpath d='M48 14c10 8 10 22 0 30c-10-8-10-22 0-30z'/%3E%3Cpath d='M48 52c10 8 10 22 0 30c-10-8-10-22 0-30z'/%3E%3Cpath d='M14 48c8-10 22-10 30 0c-8 10-22 10-30 0z'/%3E%3Cpath d='M52 48c8-10 22-10 30 0c-8 10-22 10-30 0z'/%3E%3Ccircle cx='48' cy='48' r='5'/%3E%3Ccircle cx='48' cy='48' r='12' stroke-dasharray='2 3'/%3E%3Ccircle cx='0' cy='0' r='10'/%3E%3Ccircle cx='96' cy='0' r='10'/%3E%3Ccircle cx='0' cy='96' r='10'/%3E%3Ccircle cx='96' cy='96' r='10'/%3E%3C/g%3E%3C/svg%3E"),var(--plaque-bg);background-size:96px 96px,cover;border:3px solid var(--foil);box-shadow:0 0 0 5px #0000002e,0 0 0 7px var(--foil),0 22px 40px -16px #000000b3;color:var(--plaque-ink);text-shadow:0 2px 6px rgba(0,0,0,.35);display:flex;flex-direction:column;align-items:center}.plaque-corner{position:absolute;width:38px;height:38px;color:var(--foil);opacity:.9}.plaque-corner.tl{top:22px;left:10px}.plaque-corner.tr{top:22px;right:10px;transform:scaleX(-1)}.plaque-corner.bl{bottom:8px;left:10px;transform:scaleY(-1)}.plaque-corner.br{bottom:8px;right:10px;transform:scale(-1)}.hero-plaque .hero-urdu{color:var(--foil);font-size:clamp(1.4rem,5.4vw,2rem);line-height:1.9}.hero-plaque .hero-title{color:var(--plaque-ink);font-size:clamp(1.05rem,4.2vw,1.45rem);letter-spacing:.12em;padding-left:.12em}.hero-plaque .ornament-divider{margin:6px auto 2px}.hero-plaque .hero-names{color:var(--plaque-ink);font-size:clamp(2.3rem,9vw,3.6rem);line-height:1.1}.hero-plaque .hero-amp{color:var(--foil)}.hero-plaque .hero-when{margin:8px 0 4px;padding:5px 16px;border-radius:999px;border:1.5px solid var(--foil);background:#0000002e;color:var(--plaque-ink);font-size:clamp(.95rem,3.4vw,1.15rem);letter-spacing:.04em;text-shadow:none}.event-walima .hero-plaque{text-shadow:0 2px 6px rgba(0,0,0,.25)}.event-hero .hero-glow,.event-hero .hero-frame{display:none}.event-hero .details-btn{background:linear-gradient(180deg,#ffe08a,#f2c14e 45%,#d79b26);color:#0f4024;border:5px solid #127345;outline:3px solid #f2c94c;outline-offset:0;text-shadow:0 1px 0 rgba(255,255,255,.5);box-shadow:0 12px 28px -10px #0009,inset 0 2px #fff9}.hero-barat .details-btn{border-color:#8a1222;color:#5c0a16}.hero-walima .details-btn{border-color:#3d5670;color:#24384b}@media(max-width:600px){.details-scroll{padding-left:6px;padding-right:6px}.details-card-wrap{gap:14px}}.invite-card-tall{width:min(100%,calc((100svh - 130px) * 500 / 820));aspect-ratio:500 / 820}.invite-card-tall .card-text{inset:13% 14% 15%}.invite-card-tall .ct-kicker{font-size:3.8cqw}.invite-card-tall .ct-urdu{font-size:5.6cqw}.invite-card-tall .ct-title{font-size:12cqw}.invite-card-tall .ct-honour{margin-top:3.4cqw;font-size:4.4cqw}.invite-card-tall .ct-names{font-size:10.6cqw}.invite-card-tall .ct-strip{margin-top:10cqw;width:118%;grid-template-columns:1fr;gap:2.6cqw;padding:3cqw 3.4cqw}.invite-card-tall .strip-divider{width:auto;height:1px}.invite-card-tall .strip-text{font-size:3.7cqw}.invite-card-tall .strip-text b{font-size:4.6cqw}.invite-card-tall .strip-icon{width:7cqw;height:7cqw}.invite-card-tall .card-close{width:44px;height:44px}.hero-plaque{width:auto;max-width:min(88vw,440px);padding:14px clamp(26px,6vw,40px) 10px;border-radius:50% 50% 14px 14px/30px 30px 14px 14px;box-shadow:0 0 0 3px #0000002e,0 0 0 5px var(--foil),0 16px 30px -14px #000000b3}.hero-plaque .hero-urdu{font-size:clamp(1.05rem,4vw,1.4rem);line-height:1.7}.hero-plaque .hero-title{font-size:clamp(.8rem,3vw,1rem);letter-spacing:.1em}.hero-plaque .hero-names{margin-top:2px;font-size:clamp(1.7rem,7vw,2.6rem);white-space:nowrap}.hero-plaque .hero-when{margin:4px 0 2px;padding:3px 12px;font-size:clamp(.78rem,3vw,.95rem);white-space:nowrap}.plaque-corner{width:24px;height:24px}.plaque-corner.tl,.plaque-corner.tr{top:12px}.plaque-corner.bl,.plaque-corner.br{bottom:6px}.plaque-corner.tl,.plaque-corner.bl{left:6px}.plaque-corner.tr,.plaque-corner.br{right:6px}@media(max-width:600px){.event-hero{padding-top:calc(76px + var(--safe-top))}}.hero-plaque .hero-urdu{line-height:2.05;margin-bottom:2px}.bus-approach{transform-origin:0 0;animation:busApproach 16s ease-out infinite}@keyframes busApproach{0%{transform:translate(0) scale(.14);opacity:0}6%{opacity:1}72%{transform:translate(18px,142px) scale(.56)}92%{transform:translate(18px,142px) scale(.56);opacity:1}to{transform:translate(18px,142px) scale(.56);opacity:0}}.bus-approach-tall{animation-name:busApproachTall}@keyframes busApproachTall{0%{transform:translate(0) scale(.12);opacity:0}6%{opacity:1}72%,92%{transform:translate(10px,96px) scale(.36);opacity:1}to{transform:translate(10px,96px) scale(.36);opacity:0}}.graze-sway{transform-box:fill-box;transform-origin:50% 100%;animation:grazeSway 4.5s ease-in-out infinite}@keyframes grazeSway{0%,to{transform:rotate(0) scaleY(1)}50%{transform:rotate(1.2deg) scaleY(.985)}}.ch-hold .arm-u.arm-l{animation:walkArm 1.2s ease-in-out var(--d, 0s) infinite}.ch-hold .arm-f.arm-l{transform:rotate(14deg)}.ch-hold .arm-u.arm-r{transform:rotate(-50deg)}.ch-hold .arm-f.arm-r{transform:rotate(-22deg)}.wl-dim{animation:wlDim 12s ease-in-out both}.wl-walk{animation:wlWalk 12s linear both}.wl-walk-move{transform-origin:0 0;animation:wlWalkMove 12s linear both}.wl-seated{animation:wlSeated 12s ease-out both}.wl-stagespot{animation:wlStageSpot 12s ease-in-out both}.wl-bloom{pointer-events:none;animation:wlBloom 12s ease-out both}.wl-lights{animation:wlLights 12s ease-in-out both}@keyframes wlDim{0%,64%{opacity:1}80%,to{opacity:0}}@keyframes wlWalk{0%{opacity:0}5%,62%{opacity:1}68%,to{opacity:0}}@keyframes wlWalkMove{0%,8%{transform:translateY(300px) scale(1.42)}62%{transform:translate(0) scale(1)}68%,to{transform:translateY(-40px) scale(.96)}}@keyframes wlSeated{0%,63%{opacity:0;transform:translateY(-20px)}70%,to{opacity:1;transform:translateY(0)}}@keyframes wlStageSpot{0%,45%{opacity:0}60%,70%{opacity:1}85%,to{opacity:0}}@keyframes wlBloom{0%,66%{opacity:0}72%{opacity:.22}84%,to{opacity:0}}@keyframes wlLights{0%,64%{opacity:.35}78%,to{opacity:1}}.ch-talk .arm-u.arm-r{animation:talkU 2.6s ease-in-out var(--d, 0s) infinite}.ch-talk .arm-f.arm-r{animation:talkF 1.3s ease-in-out var(--d, 0s) infinite alternate}.ch-talk .arm-u.arm-l{transform:rotate(4deg)}.ch-talk .arm-f.arm-l{transform:rotate(30deg)}.ch-talk .ch-headgrp{transform-origin:0 -144px;animation:talkHead 3.4s ease-in-out var(--d, 0s) infinite}@keyframes talkU{0%,to{transform:rotate(2deg)}50%{transform:rotate(12deg)}}@keyframes talkF{0%{transform:rotate(72deg)}to{transform:rotate(108deg)}}@keyframes talkHead{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}.wl-sparklers{animation:wlSparklers 12s ease-in-out both}.spark{animation:spark 1.1s cubic-bezier(.2,.7,.4,1) infinite}.fountain{transform-box:fill-box;transform-origin:50% 100%;animation:fountain .18s ease-in-out infinite alternate}@keyframes spark{0%{transform:translateY(-8px);opacity:1}55%{transform:translate(calc(var(--sx) * .7),var(--sy));opacity:1}to{transform:translate(var(--sx),calc(var(--sy) * .45));opacity:0}}@keyframes fountain{0%{transform:scale(.9,.94);opacity:.85}to{transform:scale(1.08,1.04);opacity:1}}@keyframes wlSparklers{0%,3%{opacity:0}8%,66%{opacity:1}76%,to{opacity:0}}.invite-locked{justify-content:center;padding:24px 16px}.locked-card{max-width:34rem;margin:0;padding:clamp(24px,5vw,40px) clamp(20px,5vw,44px);border-radius:18px;background:#fffcf2d1;border:1.5px solid rgba(154,138,78,.45);box-shadow:0 18px 50px #3f46301f}.locked-text{margin:10px 0 2px;font-size:1.05rem;color:#55613a}.top-nav{position:fixed;top:calc(12px + var(--safe-top));left:50%;transform:translate(-50%);z-index:55;display:flex;align-items:center;gap:8px}.nav-home,.nav-pill{display:inline-flex;align-items:center;justify-content:center;min-height:46px;border-radius:999px;color:#fff6e4;font-family:var(--font-display);font-weight:600;letter-spacing:.03em;white-space:nowrap;transition:background .25s,color .25s,transform .25s var(--ease-out),box-shadow .25s}.nav-home{gap:8px;padding:0 16px 0 13px;border:1.5px solid rgba(232,185,62,.75);background:#180a0e8c;backdrop-filter:blur(10px) saturate(1.2);-webkit-backdrop-filter:blur(10px) saturate(1.2)}.nav-home svg{flex:none;color:#f2c94c}.nav-pills{display:flex;gap:4px;padding:4px;border-radius:999px;border:1px solid rgba(255,240,210,.3);background:#180a0e8c;backdrop-filter:blur(10px) saturate(1.2);-webkit-backdrop-filter:blur(10px) saturate(1.2)}.nav-pill{min-height:40px;padding:0 18px;gap:8px;border:0;background:transparent}.nav-home:hover,.nav-pill:not(.active):hover{background:#fff6e429;transform:translateY(-1px)}.nav-pill.active{background:linear-gradient(180deg,#ffe08a,#f2c14e,#d79b26);color:#3a2408;box-shadow:0 2px 10px #f2c14e73;cursor:default}.nav-text{display:inline-flex;align-items:center;gap:8px}.nav-en{font-size:.98rem}.nav-ur{font-family:var(--font-urdu);font-weight:400;font-size:.86rem;line-height:1.5;letter-spacing:0}.nav-home:focus-visible,.nav-pill:focus-visible{outline:3px solid #f2c94c;outline-offset:2px}@media(max-width:760px){.top-nav{left:10px;right:66px;transform:none;gap:6px}.nav-home{flex:none;flex-direction:column;gap:0;min-width:54px;min-height:50px;padding:3px 8px 1px;border-radius:16px}.nav-home .nav-text,.nav-pill{flex-direction:column;gap:0}.nav-home .nav-ur{display:none}.nav-home .nav-en{font-size:.72rem;line-height:1.3}.nav-pills{flex:1;min-width:0;padding:3px;border-radius:16px}.nav-pill{flex:1 1 0;min-width:0;min-height:44px;padding:2px 4px 0;border-radius:13px}.nav-en{font-size:clamp(.72rem,3.3vw,.86rem);line-height:1.15}.nav-pill .nav-ur{font-size:clamp(.62rem,2.9vw,.74rem);line-height:1.45}}
