@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:500 600;font-display:swap;src:url("assets/fonts/cormorant-garamond-latin.woff2") format("woff2")}@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:500;font-display:swap;src:url("assets/fonts/cormorant-garamond-italic-latin.woff2") format("woff2")}@font-face{font-family:"DM Sans";font-style:normal;font-weight:400 600;font-display:swap;src:url("assets/fonts/dm-sans-latin.woff2") format("woff2")}@font-face{font-family:"Amiri";font-style:normal;font-weight:400;font-display:swap;src:url("assets/fonts/amiri-arabic-400.woff2") format("woff2")}
:root{--ivory:#fbf7ef;--pearl:#fffdf8;--oxblood:#6d1f35;--olive:#566048;--gold:#b18a45;--gold-text:#8a661f;--ink:#2a231d;--muted:#776d62;--line:rgba(109,31,53,.18);--serif:"Cormorant Garamond",Georgia,serif;--sans:"DM Sans",Arial,sans-serif;--arabic:"Amiri",serif;--shadow:0 24px 70px rgba(61,35,29,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--ivory);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7;overflow-x:hidden}body.invitation-locked{overflow:hidden}body.invitation-locked .hero-portrait img{visibility:hidden}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:8px;left:8px;z-index:1000;padding:.7rem 1rem;background:var(--ink);color:white;transform:translateY(-150%)}.skip-link:focus{transform:none}:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.invitation-gate{position:fixed;z-index:200;inset:0;display:grid;place-items:center;padding:clamp(1rem,4vw,3rem);overflow:auto;background:radial-gradient(circle at 50% 38%,rgba(177,138,69,.28),transparent 34rem),linear-gradient(145deg,#321522,#59182d 52%,#27131c);color:var(--ink)}.invitation-gate[hidden]{display:none}.invitation-gate:before{content:"";position:absolute;inset:0;background:url("assets/event-celestial-ornament.webp") center/cover no-repeat;opacity:.22;mix-blend-mode:screen;pointer-events:none}.gate-card{position:relative;isolation:isolate;width:min(92vw,680px);min-height:min(82svh,760px);display:grid;place-items:center;padding:clamp(2.3rem,6vw,5rem);overflow:hidden;text-align:center;background:linear-gradient(145deg,rgba(255,253,248,.99),rgba(247,238,223,.99));border:1px solid #d2ae6b;outline:1px solid rgba(244,223,179,.48);outline-offset:8px;box-shadow:0 7px 8px rgba(20,8,12,.26)}.gate-card:before{content:"";position:absolute;z-index:1;inset:18px;border:1px solid rgba(109,31,53,.28);pointer-events:none}.gate-content{position:relative;z-index:2;max-width:530px}.gate-bismillah{margin:0 0 1rem;color:var(--gold-text);font:400 clamp(1.55rem,4vw,2.25rem)/1.5 var(--arabic)}.gate-seal{width:82px;height:82px;margin:0 auto 1.6rem;display:flex;align-items:center;justify-content:center;gap:.08em;border:1px solid var(--gold);border-radius:50%;color:var(--oxblood);font:600 1.75rem/1 var(--serif);white-space:nowrap}.gate-seal span{color:var(--gold-text);font-style:italic}.gate-kicker{margin:0;color:var(--olive);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.gate-title{max-width:500px;margin:.7rem auto 1rem;font:600 clamp(2.6rem,7vw,5rem)/.94 var(--serif);letter-spacing:-.04em;text-wrap:balance}.gate-names{margin:0;color:var(--oxblood);font:600 clamp(1.35rem,3vw,1.85rem)/1.2 var(--serif)}.gate-names span{padding:0 .25em;color:var(--gold-text);font-style:italic}.gate-date{margin:.75rem 0 1.8rem;color:var(--muted);font-size:.78rem;letter-spacing:.06em}.gate-open{min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:1.2rem;padding:.75rem 1.2rem;border:1px solid var(--oxblood);border-radius:2px;background:var(--oxblood);color:white;font-size:.84rem;font-weight:600;cursor:pointer;transition:background .2s,transform .2s}.gate-open:hover{background:#521628;transform:translateY(-2px)}.gate-open:disabled{cursor:wait}.gate-open svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.gate-content small{display:block;margin-top:.8rem;color:var(--muted);font-size:.68rem}
.site-header{position:fixed;z-index:50;top:0;left:0;width:100%;height:76px;padding:0 clamp(1rem,4vw,4rem);display:flex;align-items:center;justify-content:space-between;background:rgba(251,247,239,.92);border-bottom:1px solid rgba(177,138,69,.28);backdrop-filter:blur(14px)}.monogram{font:600 1.5rem var(--serif);text-decoration:none;color:var(--oxblood)}.monogram span{color:var(--gold-text);font-style:italic;margin:0 .08em}.header-actions,.audio-controls{display:flex;align-items:center}.header-actions{margin-left:auto;gap:.7rem}.audio-controls{gap:.42rem}.music-toggle,.music-mute,.share-quiet{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid rgba(109,31,53,.2);border-radius:999px;background:rgba(255,253,248,.76);color:var(--oxblood);padding:.55rem .9rem;cursor:pointer;transition:background .2s,border-color .2s,transform .2s}.music-mute{width:42px;padding:0}.music-toggle:hover,.music-mute:hover,.share-quiet:hover{background:white;border-color:rgba(109,31,53,.45);transform:translateY(-1px)}.music-toggle svg,.music-mute svg,.share-quiet svg{width:18px;height:18px;display:block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.music-toggle .play-icon{fill:currentColor;stroke:none}.music-toggle .pause-icon,.music-mute .muted-icon{display:none}.music-toggle.is-playing .play-icon,.music-mute.is-muted .sound-icon{display:none}.music-toggle.is-playing .pause-icon,.music-mute.is-muted .muted-icon{display:block}.music-toggle.is-playing{border-color:rgba(177,138,69,.65);box-shadow:0 0 0 3px rgba(177,138,69,.08)}.music-label,.share-quiet span{font-size:.78rem;font-weight:600;letter-spacing:.02em}
.hero{min-height:100svh;padding-top:76px;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);background:var(--pearl)}.hero-copy{position:relative;padding:clamp(4rem,8vw,8rem) clamp(1.5rem,8vw,9rem) clamp(4rem,7vw,7rem);display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center}.hero-copy:before{content:"";position:absolute;inset:clamp(1rem,2.4vw,2.5rem);border:1px solid rgba(177,138,69,.45);border-radius:48% 48% 3px 3px/16% 16% 3px 3px;pointer-events:none}.hero-copy>*{position:relative}.bismillah{margin:0 0 .6rem;font:400 clamp(1.7rem,3vw,2.35rem)/1.5 var(--arabic);color:var(--oxblood)}.blessing{margin:0 0 1.4rem;color:var(--olive);font:500 .92rem var(--sans);letter-spacing:.08em}.hero h1{margin:0;display:flex;flex-direction:column;align-items:center;font-family:var(--serif);font-weight:600;line-height:.94}.hero h1>span{font-size:clamp(2.5rem,5vw,5.7rem);letter-spacing:-.035em}.hero h1 small{font:400 .77rem/1.4 var(--sans);color:var(--muted);margin-top:.6rem}.hero h1 i{font:500 clamp(2rem,4vw,3.5rem)/1 var(--serif);color:var(--gold-text);margin:1rem 0 .6rem}.hero-vow{display:flex;align-items:center;gap:.8rem;margin:1.65rem 0 0;color:var(--oxblood);font:500 italic clamp(1.2rem,1.9vw,1.55rem)/1.2 var(--serif);letter-spacing:.04em}.hero-vow span{width:clamp(2rem,4vw,3.75rem);height:1px;background:linear-gradient(90deg,transparent,var(--gold))}.hero-vow span:last-child{background:linear-gradient(90deg,var(--gold),transparent)}.hero-invite{max-width:550px;margin:1.25rem 0 1.4rem;font-family:var(--serif);font-size:clamp(1.15rem,1.7vw,1.4rem);line-height:1.55}.hero-date{display:flex;align-items:center;justify-content:center;gap:1rem;margin:.2rem 0 1.8rem;color:var(--oxblood)}.hero-date strong{font:600 3.2rem/1 var(--serif);padding:0 1rem;border-left:1px solid var(--gold);border-right:1px solid var(--gold)}.hero-date span{font-size:.72rem;line-height:1.45}.scroll-cue{z-index:3;align-items:center;gap:.55rem;font-size:.7rem;font-weight:600;letter-spacing:.12em;text-decoration:none;text-transform:uppercase}.scroll-cue svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;animation:scroll-cue-bob 1.8s ease-in-out infinite}.scroll-cue-desktop{position:absolute;left:50%;bottom:3rem;display:flex;translate:-50% 0;color:var(--olive)}.scroll-cue-mobile{display:none}.hero-portrait{position:relative;min-height:620px;background:#2c1d1e;overflow:hidden}.hero-portrait:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2),inset 0 0 90px rgba(25,10,12,.28);pointer-events:none}.hero-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 48%}.portrait-mark{position:absolute;z-index:2;right:1.4rem;bottom:1.1rem;margin:0;padding:.5rem 1.1rem;border:1px solid rgba(255,255,255,.5);background:rgba(42,35,29,.35);color:white;font:400 1.35rem var(--arabic);backdrop-filter:blur(6px)}@keyframes scroll-cue-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}
.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.35rem;border:1px solid transparent;text-decoration:none;border-radius:2px;font-size:.88rem;font-weight:600;cursor:pointer;transition:background .2s,color .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--oxblood);color:white;border-color:var(--oxblood)}.button-primary:hover{background:#521628}.button-outline{background:transparent;color:var(--oxblood);border-color:rgba(109,31,53,.45)}.button-outline:hover{background:rgba(109,31,53,.06)}.button-text{background:transparent;color:var(--oxblood);border:0;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:5px}
.section{padding:clamp(5rem,9vw,9rem) clamp(1.25rem,6vw,7rem)}.section-heading{text-align:center;margin:0 auto clamp(2.8rem,6vw,5rem)}.section-heading>p{margin:0;color:var(--gold-text);font:400 1.4rem var(--arabic)}h2{font:600 clamp(2.5rem,5vw,5rem)/1.02 var(--serif);letter-spacing:-.03em;margin:.15rem 0} .section-heading>span{display:block;margin-top:.8rem;color:var(--muted);font-size:.9rem}
.couple{background:var(--ivory)}.couple-intro{max-width:1050px;margin:auto;display:grid;grid-template-columns:1fr 130px 1fr;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:2.5rem 0}.couple-intro article:first-child{text-align:right}.couple-intro article:last-child{text-align:left}.role{font-size:.76rem;color:var(--olive)}.couple-intro h3{font:600 clamp(1.6rem,3vw,2.4rem)/1.1 var(--serif);margin:.35rem 0}.couple-intro p{margin:0;color:var(--muted);font-size:.86rem}.family-photo{display:block;width:100%;height:auto;margin:1.35rem 0 1.1rem;padding:5px;border:1px solid var(--line);background:#fff}.couple-intro .parentage{margin-top:.8rem;color:var(--olive);font-size:.76rem}.parentage strong{display:block;color:var(--oxblood);font:600 1rem/1.35 var(--serif)}.parentage span{display:block;margin-top:.55rem;color:var(--olive);font-size:.76rem}.couple-seal{width:90px;height:90px;margin:auto;display:grid;place-items:center;border:1px solid var(--gold);border-radius:50%;font:600 1.8rem var(--serif);color:var(--oxblood)}.couple-seal span{color:var(--gold-text);font-style:italic}.story-chapters{max-width:1080px;margin:clamp(3.5rem,7vw,6rem) auto 0;display:grid;grid-template-columns:minmax(0,1fr) 90px minmax(0,1fr);align-items:center}.story-thread{height:100%;min-height:230px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:var(--gold)}.story-thread span{width:1px;flex:1;background:linear-gradient(transparent,var(--gold))}.story-thread span:last-child{background:linear-gradient(var(--gold),transparent)}.story-thread strong{font:500 2.1rem var(--serif);color:var(--oxblood)}.destiny-note{max-width:790px;margin:clamp(3rem,6vw,5rem) auto 0;padding-top:2.4rem;border-top:1px solid var(--line);text-align:center}.destiny-note p{margin:0;font:500 clamp(1.2rem,2vw,1.55rem)/1.7 var(--serif);color:#4e463e;text-wrap:pretty}.destiny-note strong{display:block;margin-top:1.2rem;color:var(--oxblood);font:600 1rem var(--sans)}
.verse-section{padding:clamp(5rem,10vw,9rem) 1.25rem;background:var(--olive);color:white;text-align:center;position:relative;overflow:hidden}.verse-section:before{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(255,255,255,.13);border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.verse-section blockquote{position:relative;max-width:880px;margin:auto}.verse-ornament{position:relative;color:#d4bc86;margin-bottom:1.5rem}.arabic-verse{font:400 clamp(1.8rem,4vw,3.25rem)/1.8 var(--arabic);margin:0 0 1.5rem}.verse-section blockquote>p:not(.arabic-verse){max-width:690px;margin:0 auto;font:500 clamp(1.05rem,2vw,1.3rem)/1.7 var(--serif);color:#f5efe4}.verse-section cite{display:block;margin-top:1rem;color:#d4bc86;font-size:.78rem;font-style:normal}
.countdown-section{text-align:center;background:var(--pearl)}.countdown-section h2{max-width:700px;margin:0 auto 3rem}.countdown{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));max-width:850px;margin:auto;border:1px solid var(--line)}.countdown div{padding:1.6rem .6rem;border-right:1px solid var(--line)}.countdown div:last-child{border:0}.countdown strong{display:block;font:600 clamp(2.3rem,5vw,4.2rem)/1 var(--serif);color:var(--oxblood);font-variant-numeric:tabular-nums}.countdown span{font-size:.72rem;color:var(--muted)}.ist-note{font-size:.83rem;color:var(--muted);margin:1.2rem 0 0}
.events{background:linear-gradient(90deg,var(--ivory),#f7efe4)}.event-timeline{max-width:1200px;margin:auto}.event-card{display:grid;grid-template-columns:190px minmax(300px,1fr) minmax(240px,300px);background:var(--pearl);border:1px solid rgba(177,138,69,.35);overflow:hidden}.event-primary{border-color:rgba(109,31,53,.5)}.event-date{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;border-right:1px solid var(--line);color:var(--oxblood)}.event-date strong{font:600 5rem/1 var(--serif)}.event-date span{font-size:.78rem}.event-content{position:relative;padding:clamp(2rem,4vw,3.5rem)}.urdu-label{position:absolute;right:2rem;top:1.8rem;margin:0;color:var(--gold-text);font:400 1.3rem var(--arabic)}.event-content h3{font:600 clamp(2.3rem,4vw,4rem)/1 var(--serif);margin:0}.event-time{color:var(--oxblood);font-weight:600}.event-content address{font-style:normal;font-family:var(--serif);font-size:1.3rem;line-height:1.4;margin:0 0 1.2rem}.event-note{max-width:42ch;margin:0;color:#62584f;font:500 1rem/1.55 var(--serif)}.event-aside{position:relative;isolation:isolate;min-height:320px;padding:2rem;display:flex;align-items:flex-end;overflow:hidden;background:var(--olive);color:white}.event-primary .event-aside{background:var(--oxblood)}.event-aside>img{position:absolute;z-index:-1;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:.36;mix-blend-mode:screen}.event-aside>div{width:100%}.event-aside span{display:block;color:#ead8b1;font-size:.76rem}.event-aside strong{display:block;margin:.15rem 0 1.2rem;font:600 clamp(1.5rem,2.5vw,2.1rem)/1.05 var(--serif);overflow-wrap:anywhere}.event-directions{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem .9rem;border-top:1px solid rgba(255,255,255,.5);border-bottom:1px solid rgba(255,255,255,.5);color:white;text-decoration:none;font-size:.82rem;font-weight:600}.event-directions svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s ease}.event-directions:hover svg{transform:translateX(4px)}.timeline-connector{height:80px;display:grid;place-items:center}.timeline-connector span{height:100%;width:1px;background:var(--gold);position:relative}.timeline-connector span:after{content:"";position:absolute;bottom:0;left:50%;width:7px;height:7px;border-right:1px solid var(--gold);border-bottom:1px solid var(--gold);transform:translateX(-50%) rotate(45deg)}
.gallery{background:var(--ink);color:white}.gallery .section-heading>span{color:#bdb3a9}.gallery-grid{max-width:1200px;margin:auto;display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:170px;gap:12px}.gallery-item{position:relative;grid-column:span 4;grid-row:span 2;border:0;padding:0;background:#17120f;overflow:hidden;cursor:zoom-in}.gallery-item.wide{grid-column:span 8}.gallery-item.tall{grid-row:span 3}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.gallery-item:hover img{transform:scale(1.025)}.gallery-item span{position:absolute;left:0;bottom:0;padding:.6rem .8rem;background:rgba(42,35,29,.72);color:white;font-size:.72rem;opacity:0;transition:opacity .2s}.gallery-item:hover span,.gallery-item:focus-visible span{opacity:1}
.invitation{background:var(--ivory)}.invitation-card{max-width:880px;margin:auto;padding:clamp(3rem,7vw,6rem);text-align:center;background:var(--pearl);border:1px solid var(--gold);box-shadow:0 0 0 8px var(--pearl),0 0 0 9px rgba(177,138,69,.35),var(--shadow)}.invitation-card h2{margin-bottom:1.8rem}.invitation-card>p:not(.bismillah){max-width:650px;margin:0 auto 1rem}.invitation-card>strong{display:block;font:600 1.35rem var(--serif);color:var(--oxblood);margin-top:1.5rem}.guest-list{display:flex;flex-wrap:wrap;justify-content:center;margin:2rem 0;gap:.75rem}.guest-list span{padding:.45rem 1rem;border:1px solid var(--line);font-size:.78rem;color:var(--olive)}
.share-section{text-align:center;background:var(--pearl)}.share-section>div:first-child{max-width:600px;margin:auto}.share-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.share-status{min-height:1.5em;color:var(--olive)}footer{text-align:center;padding:4rem 1.25rem;background:var(--ivory);border-top:1px solid var(--line);font-size:.78rem;color:var(--muted)}.footer-names{font:600 clamp(1.3rem,2.5vw,1.9rem) var(--serif);color:var(--ink)}.footer-names span{color:var(--gold-text);font-style:italic}.brand-credit{display:inline-flex;flex-direction:column;align-items:center;gap:.7rem;margin-top:1.4rem;text-decoration:none}.brand-credit img{width:150px;height:auto}
.lightbox{width:min(96vw,1200px);height:min(92vh,900px);padding:0;border:0;background:transparent;color:white;overflow:visible}.lightbox::backdrop{background:rgba(20,15,12,.94);backdrop-filter:blur(8px)}.lightbox.fallback-open{display:block;position:fixed;z-index:100;inset:0;width:100vw;height:100vh;max-width:none;max-height:none;background:rgba(20,15,12,.96)}.lightbox figure{margin:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.lightbox img{max-height:calc(100% - 44px);max-width:100%;object-fit:contain}.lightbox figcaption{height:44px;padding:.7rem;font-size:.8rem}.lightbox button{position:absolute;z-index:2;width:48px;height:48px;padding:0;display:grid;place-items:center;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:rgba(109,31,53,.82);color:white;line-height:0;cursor:pointer}.lightbox button svg{width:21px;height:21px;display:block;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.lightbox-close{top:0;right:0}.lightbox-prev,.lightbox-next{top:50%;transform:translateY(-50%)}.lightbox-prev{left:0}.lightbox-next{right:0}.hero-portrait img,.gallery-item,.event-card,.section-heading,.countdown>div,.invitation-card{will-change:transform,opacity}
@media(max-width:900px){.hero{grid-template-columns:1fr;min-height:auto}.hero-portrait{grid-row:1;min-height:64svh}.hero-copy{grid-row:2;padding:5rem 1.5rem}.scroll-cue-desktop{display:none}.scroll-cue-mobile{position:absolute;left:1.2rem;bottom:1.35rem;display:flex;padding:.65rem .8rem;color:white;background:rgba(42,35,29,.46);border:1px solid rgba(255,255,255,.42);backdrop-filter:blur(6px)}.gallery-grid{grid-auto-rows:140px}.event-card{grid-template-columns:150px minmax(0,1fr)}.event-aside{grid-column:1/-1;min-height:220px;padding:1.6rem 2rem}.event-aside>img{object-position:center 42%}}
@media(max-width:640px){.invitation-gate{padding:1rem}.gate-card{width:100%;min-height:calc(100svh - 2rem);padding:2.5rem 1.45rem}.gate-card:before{inset:11px}.gate-seal{width:70px;height:70px;margin-bottom:1.25rem}.gate-title{font-size:clamp(2.45rem,12vw,3.7rem)}.site-header{height:68px;padding:0 .9rem}.hero{padding-top:68px}.section{padding:4.5rem 1rem}.hero-copy:before{inset:1rem .65rem}.hero-portrait{min-height:56svh}.hero h1>span{font-size:2.45rem}.hero-invite{max-width:310px}.couple-intro{grid-template-columns:1fr;gap:1.6rem}.couple-intro article:first-child,.couple-intro article:last-child{text-align:center}.couple-seal{width:70px;height:70px;grid-row:2}.story-chapters{grid-template-columns:1fr;gap:2.2rem}.story-thread{min-height:70px;gap:.7rem}.story-thread span{min-height:18px}.countdown{grid-template-columns:repeat(4,1fr)}.countdown div{padding:1.2rem .2rem}.countdown strong{font-size:2rem}.event-card{grid-template-columns:1fr}.event-date{border-right:0;border-bottom:1px solid var(--line);flex-direction:row;gap:1rem;padding:1.2rem}.event-date strong{font-size:3.5rem}.event-content{text-align:center}.event-note{margin-left:auto;margin-right:auto}.event-aside{grid-column:1;min-height:200px;padding:1.4rem}.urdu-label{right:1.2rem;top:1.2rem}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:175px;gap:7px}.gallery-item,.gallery-item.wide{grid-column:span 1}.gallery-item.wide{grid-column:span 2}.gallery-item.tall{grid-row:span 2}.invitation-card{padding:3rem 1.25rem}.music-toggle{width:42px;padding:0}.music-label{display:none}.share-quiet{padding:.5rem .75rem}.lightbox{width:100vw;height:100vh}.lightbox-prev{left:.5rem}.lightbox-next{right:.5rem}.lightbox-close{right:.5rem;top:.5rem}.lightbox figcaption{padding-left:3.5rem;padding-right:3.5rem;text-align:center}}
@media(max-width:370px){.header-actions{gap:.4rem}.share-quiet{padding:.45rem .6rem}.countdown span{font-size:.63rem}.countdown strong{font-size:1.75rem}.hero-date{gap:.65rem}.hero-date strong{padding:0 .7rem}}
/* Layered ceremonial surfaces */
body{background-color:var(--ivory);background-image:radial-gradient(circle at 8% 18%,rgba(177,138,69,.08),transparent 26rem),radial-gradient(circle at 92% 62%,rgba(109,31,53,.055),transparent 30rem)}
.hero-copy{isolation:isolate;overflow:hidden;background:radial-gradient(circle at 50% 43%,rgba(177,138,69,.12),transparent 28%),linear-gradient(145deg,#fffdf9 0%,#f8f0e5 100%)}.hero-copy:after{content:"";position:absolute;z-index:0;width:min(76vw,620px);aspect-ratio:1;left:50%;top:47%;translate:-50% -50%;border-radius:50%;background:conic-gradient(from 22.5deg,transparent 0 8deg,rgba(177,138,69,.12) 8deg 10deg,transparent 10deg 45deg);mask-image:radial-gradient(circle,transparent 0 34%,#000 34.5% 54%,transparent 54.5%);pointer-events:none}.hero-copy>*{z-index:1}
.couple{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 0 5%,rgba(109,31,53,.1),transparent 25rem),radial-gradient(circle at 100% 95%,rgba(86,96,72,.13),transparent 28rem),#fbf7ef}.couple:before,.couple:after{content:"✦";position:absolute;z-index:-1;color:rgba(177,138,69,.17);font:400 clamp(12rem,28vw,30rem)/1 var(--serif)}.couple:before{left:-.12em;top:-.18em}.couple:after{right:-.12em;bottom:-.28em;rotate:22deg}
.verse-section{background-color:var(--olive);background-image:radial-gradient(circle at 0 50%,rgba(244,223,179,.13),transparent 28rem),radial-gradient(circle at 100% 45%,rgba(109,31,53,.24),transparent 32rem)}
.countdown-section{position:relative;isolation:isolate;overflow:hidden;color:white;background:radial-gradient(circle at 12% 12%,rgba(244,223,179,.18),transparent 24rem),radial-gradient(circle at 88% 86%,rgba(38,17,25,.45),transparent 28rem),var(--oxblood)}.countdown-section:before{content:"";position:absolute;z-index:-1;width:min(70vw,650px);aspect-ratio:1;right:-14%;top:-38%;border:1px solid rgba(244,223,179,.18);border-radius:50%;box-shadow:0 0 0 38px rgba(244,223,179,.035),0 0 0 76px rgba(244,223,179,.025)}.countdown-section .blessing,.countdown-section .ist-note{color:#e6c98b}.countdown-section h2{color:white}.countdown{border-color:rgba(255,255,255,.28);background:rgba(38,17,25,.16)}.countdown div{border-color:rgba(255,255,255,.2)}.countdown strong{color:white}.countdown span{color:#ead8b1}
.events{position:relative;isolation:isolate;overflow:hidden;background-color:#f3eadd;background-image:radial-gradient(circle at 4% 14%,rgba(177,138,69,.22),transparent 22rem),radial-gradient(circle at 96% 84%,rgba(109,31,53,.12),transparent 28rem)}.events:before{content:"";position:absolute;z-index:0;inset:0;background:url("assets/event-celestial-ornament.webp") center/cover no-repeat;opacity:.13;pointer-events:none}.events>.section-heading,.events>.event-timeline{position:relative;z-index:1}.event-card{box-shadow:0 5px 8px rgba(61,35,29,.09)}
.gallery{background-color:var(--ink);background-image:radial-gradient(circle at 10% 20%,rgba(109,31,53,.45),transparent 30rem),radial-gradient(circle at 90% 78%,rgba(177,138,69,.14),transparent 32rem)}
.invitation{min-height:760px;display:grid;place-items:center;background-image:linear-gradient(rgba(42,35,29,.58),rgba(42,35,29,.7)),url("images/gallery-04.webp");background-size:cover;background-position:center 42%}.invitation-card{background:rgba(255,253,248,.96);box-shadow:0 0 0 8px rgba(255,253,248,.96),0 0 0 9px rgba(228,201,139,.72)}
.share-section{position:relative;isolation:isolate;overflow:hidden;color:white;background:radial-gradient(circle at 15% 40%,rgba(244,223,179,.15),transparent 22rem),radial-gradient(circle at 90% 0,rgba(109,31,53,.28),transparent 30rem),var(--olive)}.share-section:before{content:"";position:absolute;z-index:-1;width:430px;aspect-ratio:1;left:50%;top:50%;translate:-50% -50%;border:1px solid rgba(244,223,179,.2);border-radius:50%;box-shadow:0 0 0 36px rgba(244,223,179,.035),0 0 0 72px rgba(244,223,179,.025)}.share-section .bismillah{color:#e6c98b}.share-section .button-primary{background:#f1dbac;border-color:#f1dbac;color:#392d25}.share-section .button-primary:hover{background:white}.share-section .button-outline{border-color:rgba(255,255,255,.55);color:white}.share-section .button-outline:hover{background:rgba(255,255,255,.1)}.share-section .button-text,.share-section .share-status{color:white}
footer{color:#c9beb2;background:radial-gradient(circle at 50% 0,rgba(109,31,53,.35),transparent 25rem),var(--ink);border-top-color:rgba(177,138,69,.28)}footer .footer-names{color:white}
.couple-seal{display:flex;align-items:center;justify-content:center;gap:.08em;white-space:nowrap;line-height:1}.couple-seal span{display:inline}
.profession-stories{grid-template-columns:minmax(0,1fr) 76px minmax(0,1fr);align-items:start;gap:0}.profession-card{position:relative;overflow:hidden;background:var(--pearl);border:1px solid rgba(177,138,69,.42);box-shadow:0 24px 70px rgba(61,35,29,.13)}.profession-card img{width:100%;height:auto;object-fit:contain;background:#f2e9dc}.profession-copy{position:relative;padding:clamp(1.4rem,3vw,2.25rem);text-align:center;background:linear-gradient(145deg,#fffdf8,#f7eee2)}.profession-copy:after{content:"";position:absolute;bottom:0;left:50%;width:72px;height:1px;translate:-50% 0;background:var(--gold)}.profession-copy>span{color:var(--gold-text);font-size:.78rem;font-weight:600;letter-spacing:.08em}.profession-copy h3{margin:.45rem 0 .7rem;color:var(--oxblood);font:600 clamp(1.8rem,3vw,2.55rem)/1.05 var(--serif);text-wrap:balance}.profession-copy p{max-width:38ch;margin:0 auto;color:#514840;font-size:1rem;line-height:1.7;text-wrap:pretty}
@media(max-width:640px){.hero-copy:after{width:155vw}.couple:before,.couple:after{font-size:15rem}.profession-stories{grid-template-columns:1fr;max-width:34rem}.profession-stories .story-thread{min-height:72px}.countdown-section:before{width:120vw;right:-65%;top:-18%}.invitation{min-height:680px;background-position:58% center}.share-section:before{width:100vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.button:hover{transform:none}}
