:root{--ink: #125472;--ink-deep: #0d4662;--sky: #b6cbd3;--sky-soft: #d4e0e2;--panel: rgba(211, 226, 229, .84);--panel-deep: rgba(165, 193, 203, .91);--ivory: #f8f5ea;--gold: #b79a61;--sage: #788b73;--display: Didot, "Bodoni 72", "Bodoni MT", Baskerville, "Times New Roman", serif;--body: Avenir, "Avenir Next", Montserrat, "Helvetica Neue", sans-serif;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;color:var(--ink);background:#b7cbd2 url(/assets/malabar-sky.webp) center top / cover fixed no-repeat;font-family:var(--body);-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(180deg,#d5e5e914,#faf3de26)}button,input{font:inherit}a{color:inherit}img{display:block;max-width:100%}.page-shell{width:100%;overflow:hidden}.hero{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 22px 34px;text-align:center;position:relative}.panel-kicker{margin:0 0 14px;text-transform:uppercase;letter-spacing:.22em;font-size:.68rem;font-weight:500}.hero-ayah{position:absolute;top:17%;left:22px;right:22px;text-align:center;color:var(--ink-deep);font-family:Geeza Pro,Noto Naskh Arabic,Traditional Arabic,serif}.hero-ayah p{margin:0;font-size:clamp(1.8rem,7vw,2.4rem);line-height:1.8}.hero-ayah span{display:block;margin-top:4px;font-size:.85rem;line-height:1.8}.hero-title{margin:0;color:var(--ink-deep);font-family:var(--display);font-size:clamp(3.3rem,15.5vw,5rem);font-weight:400;line-height:.86;letter-spacing:-.045em;text-transform:uppercase;text-wrap:balance}.hero-title span{display:block}.scroll-cue{position:absolute;bottom:32px;display:grid;justify-items:center;gap:7px;text-decoration:none;text-transform:uppercase;letter-spacing:.18em;font-size:.58rem}.scroll-cue svg{width:24px;fill:none;stroke:currentColor;stroke-width:1.25;animation:float 2s ease-in-out infinite}.invitation-grid{width:min(100%,430px);margin:0 auto;padding:0 18px 90px;display:flex;flex-direction:column;align-items:center}.panel{width:100%;position:relative;text-align:center;overflow:hidden}.panel h2{margin:0;font-family:var(--display);font-weight:400;text-transform:uppercase;letter-spacing:.015em}.name-panel{min-height:600px;margin-bottom:24px;background:#c2d7dc47;display:grid;place-items:center;isolation:isolate}.arch-wrap{position:absolute;inset:8px -42px -20px;z-index:-1;opacity:.83}.arch-wrap img{width:100%;height:100%;object-fit:contain}.name-content{transform:translateY(32px);width:100%;padding:0 44px}.name-content h2{font-size:clamp(2rem,9.5vw,2.65rem);line-height:.95;color:var(--ink-deep)}.name-content h2 span{display:block}.name-content h2 i{display:block;margin:10px 0 9px;font-size:1.35rem;font-weight:400;color:var(--gold)}.welcome-panel{min-height:520px;padding:110px 30px 260px;background:var(--panel-deep);border-radius:52% 52% 0 0/18% 18% 0 0}.tiny-ornament{color:var(--ivory);font-size:.7rem;margin:0 0 20px}.welcome-panel h2{font-size:2rem;line-height:.96}.welcome-panel>p:not(.tiny-ornament){max-width:285px;margin:22px auto 0;font-size:.79rem;line-height:1.7;color:#0d4662d1}.welcome-panel>.family-details{font-size:1rem;line-height:1.65;margin-top:28px}.family-details strong{font-size:1.25rem;font-weight:600}.botanical-spray{position:absolute;width:112%;max-width:none;left:-6%;bottom:-16px;filter:drop-shadow(0 7px 8px rgba(50,75,76,.12))}.date-panel{min-height:545px;padding:84px 24px 38px;background:#e2ebe9b5}.date-panel h2{font-size:2.35rem}.day-line{margin:8px 0 27px;font-family:var(--display);letter-spacing:.13em;text-transform:uppercase;font-size:.76rem}.calendar{width:232px;margin:0 auto;padding:18px 16px 15px;border:1px solid rgba(18,84,114,.35);background:#f9f7ed3d}.calendar>p{margin:0 0 14px;font-family:var(--display);text-transform:uppercase;letter-spacing:.15em;font-size:.72rem}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px 2px;align-items:center}.calendar-grid span{display:grid;place-items:center;aspect-ratio:1;font-size:.56rem}.calendar-head{margin-bottom:5px;color:var(--gold)}.calendar-grid .selected{width:24px;justify-self:center;border:1px solid var(--ink);border-radius:50%;background:var(--ink);color:#fff}.date-divider{position:absolute;width:97%;max-width:none;left:1.5%;bottom:-4px}.venue-panel{margin-bottom:24px;background:#d1e0e0c2;display:flex;flex-direction:column}.venue-copy{padding:56px 24px;position:relative;z-index:1}.venue-copy h2{font-size:clamp(2.1rem,10vw,2.8rem);line-height:1.1}.venue-copy>p:not(.panel-kicker){margin:10px 0 18px;font-size:.72rem;text-transform:uppercase;letter-spacing:.13em}.venue-copy>.event-date{margin:18px 0 24px;line-height:1.6}.venue-copy>.venue-name{margin:0 0 18px;font-family:var(--display);font-size:1.4rem;line-height:1.35;letter-spacing:.025em}.text-link{display:inline-flex;gap:8px;align-items:center;min-height:44px;font-size:.64rem;font-weight:600;text-decoration:none;text-transform:uppercase;letter-spacing:.17em;border-bottom:1px solid rgba(18,84,114,.4)}.timeline-panel{min-height:690px;padding:69px 24px 30px;background:#dce7e7d1}.timeline-panel h2{font-size:2.25rem}.timeline-event{position:absolute;z-index:2}.timeline-event time{display:block;font-family:var(--display);font-size:1.75rem}.timeline-event p{margin:4px 0 0;font-size:.65rem;line-height:1.35;text-transform:uppercase;letter-spacing:.1em}.event-one{top:225px;left:29px;text-align:left}.event-two{right:28px;bottom:137px;text-align:right}.timeline-dot{position:absolute;color:#fffffff2;font-size:.35rem;z-index:3}.dot-one{top:250px;left:51%}.dot-two{bottom:264px;right:31%}.nikah-art{position:absolute;width:55%;left:-23px;bottom:-9px;filter:drop-shadow(0 8px 9px rgba(34,57,56,.12))}.lantern-art{position:absolute;width:43%;right:-23px;top:130px;filter:drop-shadow(0 8px 10px rgba(34,57,56,.14))}.closing-panel{min-height:690px;padding:168px 34px 80px;color:var(--ivory);background:linear-gradient(#6993a245,#3d677785),url(/assets/malabar-sky.webp) center 76% / 160% auto}.closing-panel>img{position:absolute;width:104%;max-width:none;left:-2%;top:80px;filter:brightness(1.22)}.closing-panel h2{max-width:310px;margin:0 auto;font-size:2rem;line-height:1.02;text-shadow:0 2px 12px rgba(30,65,78,.18)}.closing-note{margin:22px 0 0;font-family:var(--display);font-style:italic;font-size:1.05rem}.countdown{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:55px 0 35px}.countdown span{padding:13px 5px;border-top:1px solid rgba(255,255,255,.55);border-bottom:1px solid rgba(255,255,255,.55);text-transform:uppercase;letter-spacing:.12em;font-size:.5rem}.countdown strong{display:block;margin-bottom:6px;font-family:var(--display);font-size:1.6rem;font-weight:400;letter-spacing:0}.back-top{display:inline-flex;align-items:center;min-height:44px;font-size:.59rem;text-decoration:none;text-transform:uppercase;letter-spacing:.16em}footer{padding:24px 20px 32px;color:#0d4662b8;background:#ebecdf8a;text-align:center}footer p{margin:0;font-family:var(--display);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}.reveal{opacity:0;transform:translateY(22px);transition:opacity .85s ease,transform .85s ease}.reveal.visible{opacity:1;transform:none}@keyframes float{50%{transform:translateY(6px)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.scroll-cue svg{animation:none}}@media(min-width:760px){body{background-size:cover}.hero{min-height:58vh;align-items:flex-end;text-align:left;padding:70px max(7vw,50px) 60px}.hero-ayah{top:20px;left:auto;right:max(7vw,50px);width:min(49vw,690px)}.hero-title{width:min(49vw,690px)}.hero-title{font-size:clamp(4.2rem,8.3vw,7.7rem)}.scroll-cue{left:50%;transform:translate(-50%)}.invitation-grid{width:min(90vw,980px);max-width:none;padding:0 0 110px;display:grid;grid-template-columns:repeat(2,minmax(300px,395px));justify-content:center;align-items:start;column-gap:clamp(35px,7vw,90px)}.name-panel{grid-column:1;grid-row:1}.timeline-panel{grid-column:2;grid-row:1;margin-top:190px}.welcome-panel{grid-column:1;grid-row:2;margin-top:0}.date-panel{grid-column:1;grid-row:3}.nikkah-venue{grid-column:1;grid-row:4}.reception-venue{grid-column:1;grid-row:5}.closing-panel{grid-column:2;grid-row:2 / span 2;margin-top:-5px}.panel{box-shadow:0 18px 50px #3448481a}}
