.invitation-loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100vh;height:100dvh;z-index:250;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 42%,#fffdf9,#f7efe4 65%,#efe2d0);-webkit-user-select:none;user-select:none;opacity:1;visibility:visible;transition:opacity .65s cubic-bezier(.22,1,.36,1),visibility .65s cubic-bezier(.22,1,.36,1)}.invitation-loading-screen.is-loaded{opacity:0;visibility:hidden;pointer-events:none}.loading-ornament-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center}.loading-crest-wrapper{position:relative;width:112px;height:112px;display:flex;align-items:center;justify-content:center;margin-bottom:1.35rem}.loading-spinning-ring{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;animation:loadingRingSpin 9s linear infinite}@keyframes loadingRingSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-monogram-script{font-family:var(--font-script);font-size:2.25rem;color:var(--text-script-gold);line-height:1;text-shadow:0 2px 10px rgba(197,155,95,.25);animation:loadingPulse 2.2s ease-in-out infinite}@keyframes loadingPulse{0%,to{opacity:.82;transform:scale(.97)}50%{opacity:1;transform:scale(1.03)}}.loading-title-script{font-family:var(--font-script);font-size:clamp(1.85rem,6vw,2.3rem);color:var(--text-script-gold);margin-bottom:.9rem;line-height:1.2}.loading-progress-track{width:160px;height:2px;background:#c59b5f3d;border-radius:999px;overflow:hidden;margin-bottom:.75rem}.loading-progress-fill{height:100%;background:linear-gradient(90deg,#d9b675,#b38340,#d9b675);border-radius:999px;transition:width .28s ease-out}.loading-subtitle-caps{font-family:var(--font-caps);font-size:.68rem;letter-spacing:.24em;color:var(--text-muted-bronze)}.envelope-video-stage{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100vh;height:100dvh;z-index:100;display:flex;justify-content:center;align-items:center;background-color:var(--bg-ivory-primary);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;opacity:1;transition:opacity .65s cubic-bezier(.22,1,.36,1)}.envelope-video-stage.is-fading-out{opacity:0;pointer-events:none}.envelope-video-crop-viewport{position:relative;width:100%;max-width:var(--stage-max-width);height:100vh;height:100dvh;overflow:hidden;background-color:#faf3e8;box-shadow:0 0 80px #5a3e2029}.envelope-closed-static-poster{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center center;display:block;z-index:2;pointer-events:none;transition:opacity .15s ease-out}.envelope-closed-static-poster.is-hidden{opacity:0}.envelope-source-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center center;display:block;z-index:1;cursor:pointer}.envelope-seal-click-target{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:clamp(120px,30vw,156px);height:clamp(120px,30vw,156px);border-radius:50%;background:transparent;border:none;cursor:pointer;z-index:5;padding:0}.envelope-seal-click-target.is-opening{pointer-events:none}.envelope-bismillah-badge{position:absolute;top:max(8%,env(safe-area-inset-top,28px));left:50%;transform:translate(-50%);z-index:6;display:flex;align-items:center;justify-content:center;background:#fdf9f3e0;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:.42rem 1.25rem;border-radius:999px;border:1px solid rgba(197,155,95,.38);box-shadow:0 4px 18px #8c64301a,0 1px 2px #fffc inset;cursor:pointer;transition:opacity .35s ease,transform .35s ease}.envelope-bismillah-badge.is-hidden{opacity:0;transform:translate(-50%) translateY(-8px);pointer-events:none}.envelope-bismillah-img{width:clamp(140px,36vw,195px);height:auto;display:block;filter:drop-shadow(0 1px 2px rgba(180,135,75,.28));-webkit-user-select:none;user-select:none}.envelope-tap-prompt{position:absolute;bottom:max(7%,env(safe-area-inset-bottom,24px));left:50%;transform:translate(-50%);z-index:6;display:flex;align-items:center;gap:.5rem;font-family:var(--font-serif);font-style:italic;font-size:.95rem;letter-spacing:.05em;color:var(--gold-bronze-deep);background:#fdf9f3db;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:.42rem 1.15rem;border-radius:999px;border:1px solid rgba(197,155,95,.35);box-shadow:0 4px 16px #8c643014;cursor:pointer;white-space:nowrap;transition:opacity .3s ease,transform .3s ease}.envelope-tap-prompt.is-hidden{opacity:0;transform:translate(-50%) translateY(8px);pointer-events:none}.tap-prompt-star{color:var(--gold-primary);font-style:normal;font-size:.76rem}.envelope-champagne-glow{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;pointer-events:none;opacity:0;transform:scale(.85);background:radial-gradient(circle at 50% 50%,#fffaee,#fcecc6f5 42%,#f8e2b2e6 75%,#fcf8f4f2);transition:opacity .55s ease-out,transform .65s ease-out}.envelope-champagne-glow.is-active{opacity:1;transform:scale(1.15)}.hero-arch-stage{position:relative;width:100%;background-color:var(--bg-ivory-primary);display:flex;justify-content:center;align-items:flex-start;overflow:hidden;-webkit-user-select:none;user-select:none;padding-bottom:clamp(1.2rem,4vh,2.5rem)}.hero-portrait-composition{position:relative;width:100%;max-width:var(--stage-max-width);height:100vh;height:100svh;min-height:540px;max-height:920px;container-type:inline-size;overflow:hidden;background-color:var(--bg-ivory-primary)}.hero-approved-bg-image{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center top;display:block;z-index:1;pointer-events:none}.hero-hanging-lamps-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none}.hanging-lamp-unit{position:absolute;display:flex;flex-direction:column;align-items:center;transform-origin:50% 0%;will-change:transform}.lamp-unit-upper-left{top:11.2%;left:26.5%;width:10.5%;animation:gentlePendulumLeft 6.4s ease-in-out infinite}.lamp-unit-upper-right{top:11.2%;right:26.5%;width:10.5%;animation:gentlePendulumRight 6.9s ease-in-out -1.8s infinite}.lamp-unit-lower-left{top:14.5%;left:14.2%;width:14.8%;animation:gentlePendulumRight 7.4s ease-in-out -.9s infinite}.lamp-unit-lower-right{top:14.5%;right:14.2%;width:14.8%;animation:gentlePendulumLeft 7.8s ease-in-out -3.1s infinite}.hanging-lamp-long-cord{width:1.5px;background:linear-gradient(180deg,#8e6735,#d6b06c 45%,#9c743c);margin-bottom:-6%;flex-shrink:0}.cord-short{height:11cqw;min-height:36px;max-height:62px}.cord-long{height:22cqw;min-height:76px;max-height:124px}.hanging-lamp-body{width:100%;height:auto;display:block;filter:drop-shadow(0 6px 14px rgba(128,88,36,.22))}@keyframes gentlePendulumLeft{0%,to{transform:rotate(-1.8deg)}50%{transform:rotate(1.8deg)}}@keyframes gentlePendulumRight{0%,to{transform:rotate(1.6deg)}50%{transform:rotate(-1.6deg)}}.hero-dedicated-text-layer{position:absolute;top:26.5%;left:50%;transform:translate(-50%);width:64%;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none}.hero-welcome-label{font-family:var(--font-serif);font-style:italic;font-size:clamp(.88rem,3.6cqw,1.18rem);color:var(--text-muted-bronze);letter-spacing:.04em;line-height:1.2;margin-bottom:.4cqw}.hero-ceremony-heading{font-family:var(--font-script);font-weight:400;font-size:clamp(1.65rem,6.8cqw,2.45rem);color:var(--text-script-gold);line-height:1.08;margin-bottom:.4cqw;text-shadow:0 2px 10px rgba(255,250,240,.95)}.hero-of-separator{display:flex;align-items:center;justify-content:center;gap:1.6cqw;margin:.3cqw auto .5cqw}.hero-of-rule{width:7.5cqw;max-width:34px;height:1px;background:linear-gradient(90deg,transparent,var(--gold-primary),transparent)}.hero-of-script{font-family:var(--font-script);font-size:clamp(1.1rem,4.4cqw,1.55rem);color:var(--text-script-gold);line-height:1}.hero-couple-names-stack{display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.08;width:100%;gap:.25cqw}.hero-couple-name{font-family:var(--font-script);font-size:clamp(1.95rem,8.4cqw,3.05rem);color:#a8793b;text-shadow:0 1px 2px rgba(255,255,255,.98),0 2px 12px rgba(255,248,232,.95);white-space:nowrap}.hero-couple-name.name-first{transform:translate(-11%);margin-bottom:.2cqw}.hero-couple-name.name-second{transform:translate(11%);margin-top:.2cqw}.hero-couple-ampersand{font-family:var(--font-script);font-size:clamp(1.15rem,4.6cqw,1.65rem);color:var(--gold-primary);margin:.1cqw 0}.hero-couple-video-layer{position:absolute;top:46%;left:50%;transform:translate(-50%);width:62%;height:46%;z-index:4;display:flex;align-items:flex-end;justify-content:center;pointer-events:none;-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 76%,rgba(0,0,0,.55) 90%,transparent 100%),radial-gradient(ellipse 92% 94% at 50% 44%,#000 68%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(180deg,#000 0%,#000 76%,rgba(0,0,0,.55) 90%,transparent 100%),radial-gradient(ellipse 92% 94% at 50% 44%,#000 68%,transparent 100%);mask-composite:intersect}.hero-couple-transparent-video{width:100%;height:100%;object-fit:contain;object-position:center bottom;display:block;filter:drop-shadow(0 8px 20px rgba(90,56,22,.16))}.sr-only-source-video{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.hero-bottom-glow-bloom{position:absolute;bottom:0;left:0;width:100%;height:28%;z-index:5;pointer-events:none;overflow:hidden}.bloom-corner-glow{position:absolute;bottom:-6%;width:56%;height:92%;border-radius:50%;filter:blur(22px);opacity:.94;background:radial-gradient(circle at center,#fff8ebfa,#f7e5c6e0 42%,#e8c68e73 70%,#fcf8f400)}.bloom-corner-left{left:-14%}.bloom-corner-right{right:-14%}.bloom-center-mist{position:absolute;bottom:0;left:-8%;width:116%;height:82%;background:radial-gradient(ellipse 68% 75% at 50% 72%,#fff9eef5,#f9eaced1 48%,#fcf8f400);backdrop-filter:blur(5px) brightness(1.04);-webkit-backdrop-filter:blur(5px) brightness(1.04);-webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.65) 45%,#000 100%);mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.65) 45%,#000 100%)}.hero-bottom-seamless-fade{position:absolute;bottom:0;left:0;width:100%;height:18%;z-index:5;pointer-events:none;background:linear-gradient(180deg,rgba(252,248,244,0) 0%,rgba(252,248,244,.72) 52%,rgba(252,248,244,.96) 82%,var(--bg-ivory-primary) 100%)}.hero-scroll-down-btn{position:absolute;bottom:max(3.2%,calc(env(safe-area-inset-bottom,12px) + 14px));left:50%;transform:translate(-50%);z-index:8;background:transparent;border:none;cursor:pointer;padding:0;-webkit-tap-highlight-color:transparent}.scroll-down-pill-inner{display:flex;flex-direction:column;align-items:center;gap:.18rem;padding:.42rem 1.35rem .38rem;border-radius:999px;background:#fffbf5e0;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(197,155,95,.48);box-shadow:0 6px 20px #8a602a26,0 0 0 3px #fffaf28c;animation:scrollPillFloat 2.4s ease-in-out infinite}.scroll-down-text{font-family:var(--font-script);font-size:clamp(1.28rem,4.3cqw,1.6rem);color:var(--text-script-gold);line-height:1;white-space:nowrap}.scroll-down-chevrons{display:flex;flex-direction:column;align-items:center;margin-top:1px}.scroll-down-chevron{width:14px;height:8px;color:var(--gold-primary);display:block}.scroll-down-chevron.chevron-top{animation:chevronCascade 1.6s ease-in-out infinite}.scroll-down-chevron.chevron-bottom{margin-top:-3px;animation:chevronCascade 1.6s ease-in-out .22s infinite}@keyframes scrollPillFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes chevronCascade{0%,to{opacity:.35;transform:translateY(-1px)}50%{opacity:1;transform:translateY(2px)}}.date-scratch-section{position:relative;padding:clamp(3.6rem,8vh,5.2rem) 1.25rem clamp(2.6rem,6vh,3.8rem);text-align:center;background-color:var(--bg-ivory-primary);z-index:10}.date-scratch-subtitle{font-family:var(--font-serif);font-size:clamp(.95rem,3.3vw,1.1rem);color:var(--gold-bronze-deep);letter-spacing:.04em;margin-top:.35rem;margin-bottom:1.5rem}.scratch-cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(.65rem,3vw,1.1rem);max-width:410px;margin:0 auto 1.4rem}.scratch-card-column{display:flex;flex-direction:column;align-items:center;gap:.55rem}.scratch-card-box{position:relative;width:100%;aspect-ratio:1 / 1.06;border-radius:14px;background:linear-gradient(145deg,#fffdfb,#f9f1e6);border:1.2px solid rgba(197,155,95,.58);box-shadow:0 8px 22px #8c64301a,inset 0 0 0 4px #ffffffb3;overflow:hidden;display:flex;align-items:center;justify-content:center;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:pan-y}.scratch-card-box.is-revealed{border-color:var(--gold-primary);box-shadow:0 10px 26px #c59b5f2e,inset 0 0 18px #e8cf9c38}.scratch-card-revealed-content{position:relative;z-index:1;padding:.4rem;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.scratch-date-value{font-family:var(--font-serif);font-weight:500;font-size:clamp(1.22rem,4.5vw,1.55rem);color:var(--gold-bronze-deep);letter-spacing:.02em;text-align:center;line-height:1.15}.scratch-foil-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:3;transition:opacity .65s ease,transform .65s ease}.scratch-foil-canvas.canvas-dissolved{opacity:0;transform:scale(1.08);pointer-events:none}.scratch-card-caption{font-family:var(--font-caps);font-size:.72rem;letter-spacing:.22em;color:var(--text-muted-bronze);text-transform:uppercase}.scratch-sparkle-burst{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none}.sparkle-dot{position:absolute;color:#e2b363;font-size:1rem;text-shadow:0 0 8px rgba(255,224,145,.95);animation:burstSparkleAnim .95s ease-out forwards}.sd-1{top:20%;left:22%}.sd-2{top:18%;right:20%;animation-delay:.06s}.sd-3{bottom:22%;left:25%;animation-delay:.1s}.sd-4{bottom:18%;right:22%;animation-delay:.04s}.sd-5{top:46%;left:48%;font-size:1.35rem}@keyframes burstSparkleAnim{0%{opacity:1;transform:scale(.4)}50%{opacity:1;transform:scale(1.35) translateY(-6px)}to{opacity:0;transform:scale(.8) translateY(-14px)}}.date-ogee-arch-divider{width:100%;max-width:340px;margin:.4rem auto 0}.ogee-divider-svg{width:100%;height:auto;display:block}.formal-invitation-section{position:relative;padding:clamp(2.2rem,5vh,3.6rem) 1rem clamp(3.6rem,7vh,5rem);background-color:var(--bg-ivory-primary);z-index:10}.formal-arch-card-wrapper{position:relative;max-width:430px;margin:0 auto;padding:4.4rem 2rem 3.8rem;text-align:center}.formal-scalloped-arch-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.formal-arch-content{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center}.formal-blessing-crown{margin-bottom:1rem}.blessing-arabic-calligraphy{font-family:var(--font-arabic);font-size:clamp(1.35rem,5vw,1.65rem);color:var(--gold-bronze-deep);line-height:1.3;letter-spacing:.02em}.blessing-flourish-svg{width:135px;height:18px;margin:.15rem auto 0;display:block}.formal-invited-label{font-family:var(--font-serif);font-weight:500;font-size:clamp(.76rem,2.7vw,.86rem);letter-spacing:.16em;line-height:1.55;color:var(--text-muted-bronze);text-transform:uppercase;margin-bottom:.85rem}.formal-person-block{margin-bottom:.35rem}.formal-partner-script-name{font-family:var(--font-script);font-weight:400;font-size:clamp(2.65rem,9vw,3.35rem);color:var(--text-script-gold);line-height:1.1;margin-bottom:.25rem;text-shadow:0 2px 10px rgba(197,155,95,.16)}.formal-lineage-group{margin-top:.2rem}.secondary-tribute-group{margin-top:.45rem;padding-top:.35rem;border-top:1px solid rgba(197,155,95,.22)}.formal-relation-label{font-family:var(--font-serif);font-size:.72rem;letter-spacing:.18em;color:var(--text-muted-bronze);text-transform:uppercase;margin-bottom:.15rem}.formal-parents-names{font-family:var(--font-serif);font-weight:600;font-size:clamp(.84rem,2.9vw,.95rem);letter-spacing:.08em;color:var(--text-espresso);text-transform:none}.formal-with-connector{font-family:var(--font-script);font-size:clamp(1.75rem,6vw,2.15rem);color:var(--gold-primary);margin:.55rem 0 .35rem;line-height:1}.formal-message-block{margin-top:1.45rem;max-width:280px}.formal-message-heading{font-family:var(--font-script);font-weight:400;font-size:clamp(1.85rem,6.2vw,2.25rem);color:var(--text-script-gold);margin-bottom:.45rem;line-height:1.15}.formal-message-body{font-family:var(--font-serif);font-size:clamp(.96rem,3.3vw,1.08rem);line-height:1.52;color:var(--text-muted-bronze)}.formal-dua-block{margin-top:1.8rem;max-width:320px;display:flex;flex-direction:column;align-items:center;gap:.45rem}.dua-flourish-top{margin-bottom:.2rem}.dua-flourish-bottom{margin-top:.2rem}.formal-dua-arabic{font-family:var(--font-arabic);font-size:clamp(1.2rem,4.4vw,1.48rem);color:var(--gold-bronze-deep);line-height:1.65;letter-spacing:.02em;text-align:center}.formal-dua-meaning{font-family:var(--font-serif);font-style:italic;font-size:clamp(.85rem,2.9vw,.94rem);line-height:1.5;color:var(--text-muted-bronze);text-align:center;max-width:290px;margin:0 auto}.formal-arch-bottom-florals{position:absolute;bottom:-14px;left:0;width:100%;height:160px;z-index:2;pointer-events:none}.formal-corner-floral{position:absolute;bottom:0;width:42%;max-width:175px;height:auto}.floral-left{left:-4%;transform:scaleX(-1)}.floral-right{right:-4%}.wedding-timeline-section{position:relative;padding:clamp(3.2rem,6.5vh,4.8rem) 1.15rem clamp(3.8rem,7.5vh,5.2rem);background-color:var(--bg-ivory-primary);z-index:10}.timeline-header-group{text-align:center;margin-bottom:2.4rem}.timeline-subtitle{font-family:var(--font-caps);font-size:.72rem;letter-spacing:.22em;color:var(--text-muted-bronze);margin-top:.35rem}.timeline-events-container{position:relative;max-width:420px;margin:0 auto;padding:.5rem 0}.timeline-center-axis-track{position:absolute;top:12px;bottom:12px;left:50%;width:1.5px;transform:translate(-50%);background:#c59b5f3d;z-index:1}.timeline-center-axis-fill{width:100%;height:100%;background:linear-gradient(180deg,#e2be7e,#c59b5f,#9e7339);transform-origin:top center;box-shadow:0 0 8px #daaf668c}.timeline-event-row{position:relative;z-index:2;display:grid;grid-template-columns:1fr 38px 1fr;align-items:center;margin-bottom:2.4rem}.timeline-event-row:last-child{margin-bottom:.5rem}.timeline-col{display:flex;flex-direction:column;justify-content:center}.timeline-col-left{align-items:center;text-align:center;padding-right:.5rem}.timeline-col-right{align-items:center;text-align:center;padding-left:.5rem}.timeline-center-node-col{display:flex;align-items:center;justify-content:center}.timeline-star-node{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle,#ffecb6d9,#fcf8f400 72%);border-radius:50%}.timeline-star-svg{width:20px;height:20px;filter:drop-shadow(0 0 6px rgba(212,168,88,.75))}.timeline-illustration-wrap{width:100%;max-width:118px;margin:0 auto}.timeline-vignette-svg{width:100%;height:auto;display:block;filter:drop-shadow(0 4px 10px rgba(197,155,95,.14))}.timeline-details-wrap{max-width:165px}.timeline-event-date{display:block;font-family:var(--font-caps);font-size:.65rem;letter-spacing:.16em;color:var(--gold-primary);text-transform:uppercase;margin-bottom:.2rem}.timeline-event-time{font-family:var(--font-serif);font-weight:500;font-size:clamp(1.38rem,4.8vw,1.65rem);color:var(--gold-bronze-deep);line-height:1.15;margin-bottom:.25rem}.timeline-event-title{font-family:var(--font-serif);font-weight:500;font-size:clamp(1.02rem,3.6vw,1.18rem);color:var(--text-espresso);letter-spacing:.03em;line-height:1.25}.timeline-event-desc{font-family:var(--font-serif);font-style:italic;font-size:.88rem;line-height:1.38;color:var(--text-muted-bronze);margin-top:.3rem}.venue-map-section{position:relative;padding:clamp(2.8rem,6vh,4.4rem) 1.15rem clamp(4.5rem,9vh,6rem);background-color:var(--bg-ivory-primary);text-align:center;z-index:10}.venue-top-ornament{max-width:240px;margin:0 auto 1.2rem}.venue-divider-svg{width:100%;height:auto;display:block}.venue-subtitle{font-family:var(--font-caps);font-size:.72rem;letter-spacing:.22em;color:var(--text-muted-bronze);margin-top:.35rem;margin-bottom:1.65rem}.venue-card-frame{position:relative;max-width:420px;margin:0 auto;padding:2.2rem 1.35rem 2rem;background:linear-gradient(180deg,#fffdfaf0,#f9f1e6f0);border:1.2px solid rgba(197,155,95,.58);border-radius:170px 170px 22px 22px;box-shadow:0 14px 36px #845e2e17,inset 0 0 0 5px #fcf8f4d9,inset 0 0 0 6px #c59b5f47}.venue-pin-crest{width:34px;height:40px;margin:0 auto .65rem}.venue-pin-svg{width:100%;height:100%}.venue-palace-name{font-family:var(--font-serif);font-weight:600;font-size:clamp(1.45rem,5.2vw,1.75rem);color:var(--text-espresso);letter-spacing:.04em;margin-bottom:.55rem}.venue-address-lines{font-style:normal;margin-bottom:.75rem}.venue-address-line{font-family:var(--font-serif);font-size:clamp(.98rem,3.4vw,1.08rem);color:var(--text-muted-bronze);line-height:1.45}.venue-parking-note{font-family:var(--font-serif);font-style:italic;font-size:.88rem;color:var(--gold-bronze-deep);margin-bottom:1.25rem}.venue-map-iframe-container{position:relative;width:100%;height:255px;border-radius:16px;overflow:hidden;border:1.2px solid rgba(197,155,95,.55);box-shadow:0 8px 22px #78562a1f;margin-bottom:1.35rem;background-color:#f4eae0}.venue-google-map-iframe{width:100%;height:100%;border:0;display:block;filter:sepia(16%) contrast(97%) brightness(101%);transition:filter .35s ease}.venue-map-iframe-container:hover .venue-google-map-iframe,.venue-map-iframe-container:focus-within .venue-google-map-iframe{filter:sepia(0%) contrast(100%)}.venue-directions-btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;width:100%;max-width:260px;min-height:48px;padding:.75rem 1.5rem;border-radius:999px;background:linear-gradient(135deg,#d4ad6a,#b88b4a,#cfa662);color:#fffdf9;font-family:var(--font-caps);font-weight:600;font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;border:1px solid rgba(255,245,222,.65);box-shadow:0 8px 20px #a87a3a47,inset 0 1px 1px #ffffff73;transition:transform .25s ease,box-shadow .25s ease,filter .25s ease}.venue-directions-btn:hover,.venue-directions-btn:focus-visible{transform:translateY(-2px);box-shadow:0 12px 26px #a87a3a61;filter:brightness(1.05)}.directions-btn-icon{width:18px;height:18px}.invitation-closing-footer{margin-top:2.8rem;padding-top:1rem;display:flex;flex-direction:column;align-items:center}.footer-center-floral{width:165px;height:auto;margin-bottom:.5rem;transform:rotate(-18deg)}.footer-closing-script{font-family:var(--font-script);font-size:clamp(2rem,6.8vw,2.45rem);color:var(--text-script-gold);line-height:1.15}.footer-couple-monogram{font-family:var(--font-script);font-size:1.65rem;color:var(--gold-bronze-deep);margin-top:.25rem}.footer-wedding-hashtag{font-family:var(--font-caps);font-size:.72rem;letter-spacing:.2em;color:var(--text-muted-bronze);margin-top:.4rem}.floating-audio-btn{position:fixed;bottom:max(1.4rem,env(safe-area-inset-bottom,1.4rem));right:max(1.2rem,calc(50vw - 230px));z-index:120;width:46px;height:46px;border-radius:50%;border:1.5px solid rgba(255,248,232,.85);background:linear-gradient(135deg,#dfbf82,#c59b5f 55%,#b08346);color:#fffdf9;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 6px 20px #845c2a52,inset 0 1px 2px #ffffff8c;opacity:0;transform:scale(.8) translateY(10px);pointer-events:none;transition:opacity .55s ease,transform .55s ease,box-shadow .25s ease;-webkit-tap-highlight-color:transparent}@media (max-width: 520px){.floating-audio-btn{right:1.15rem}}.floating-audio-btn.is-visible{opacity:1;transform:scale(1) translateY(0);pointer-events:auto}.floating-audio-btn:hover{box-shadow:0 8px 26px #a8783873}.audio-btn-icon{width:20px;height:20px}:root{--bg-ivory-primary: #FCF8F4;--bg-ivory-secondary: #F8F0E6;--bg-envelope-cream: #FAF4EC;--bg-card-surface: rgba(252, 248, 244, .92);--gold-primary: #C59B5F;--gold-metallic-light: #E8CF9C;--gold-metallic-bright: #F5E3BC;--gold-bronze-deep: #8C6430;--gold-border-subtle: rgba(197, 155, 95, .42);--gold-border-strong: rgba(197, 155, 95, .78);--bridal-farshi-maroon: #6E1423;--text-espresso: #4A3520;--text-muted-bronze: #7A5C3C;--text-script-gold: #B08346;--glow-amber-soft: rgba(255, 220, 148, .55);--glow-amber-intense: rgba(255, 212, 128, .88);--shadow-envelope-flap: rgba(138, 108, 76, .14);--shadow-card-soft: 0 14px 40px rgba(120, 88, 52, .09);--font-script: "MonteCarlo", "Great Vibes", cursive;--font-serif: "Cormorant Garamond", Georgia, serif;--font-caps: "Cinzel", "Cormorant Garamond", serif;--font-arabic: "Amiri", serif;--stage-max-width: 500px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{background-color:#efe6da;color:var(--text-espresso);font-family:var(--font-serif);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{min-height:100vh;min-height:100dvh;overflow-x:hidden;background:radial-gradient(circle at 50% 20%,#f7efe6,#e7d9c8)}body.envelope-locked{overflow:hidden;height:100vh;height:100dvh}.invitation-app-shell{width:100%;min-height:100vh;min-height:100dvh;display:flex;justify-content:center;align-items:flex-start;position:relative}.invitation-viewport-stage{width:100%;max-width:var(--stage-max-width);min-height:100vh;min-height:100dvh;background-color:var(--bg-ivory-primary);position:relative;overflow-x:hidden;box-shadow:0 0 80px #5a3e202e}.invitation-viewport-stage:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:90;opacity:.028;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E")}.gold-star-bullet{display:inline-block;color:var(--gold-primary);font-size:.85em;margin:0 .45rem;vertical-align:middle}.section-script-heading{font-family:var(--font-script);font-weight:400;font-size:clamp(2.5rem,8vw,3.3rem);color:var(--text-script-gold);line-height:1.15;text-align:center;text-shadow:0 2px 10px rgba(197,155,95,.18)}@keyframes lampSwingLeft{0%{transform:rotate(-3.4deg)}50%{transform:rotate(3.4deg)}to{transform:rotate(-3.4deg)}}@keyframes lampSwingRight{0%{transform:rotate(3.1deg)}50%{transform:rotate(-3.1deg)}to{transform:rotate(3.1deg)}}@keyframes lanternCandleGlow{0%,to{opacity:.65;transform:scale(.95)}50%{opacity:1;transform:scale(1.08)}}@keyframes coupleGentleBreath{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-2.5px) scale(1.006,1.004)}}@keyframes farshiTrainShimmer{0%,to{filter:drop-shadow(0 6px 18px rgba(197,155,95,.25)) brightness(1)}50%{filter:drop-shadow(0 8px 24px rgba(232,207,156,.48)) brightness(1.03)}}@keyframes waxSealPulse{0%,to{transform:translate(-50%,-50%) scale(1);filter:drop-shadow(0 8px 20px rgba(140,100,48,.22))}50%{transform:translate(-50%,-50%) scale(1.035);filter:drop-shadow(0 10px 28px rgba(218,172,95,.48))}}@keyframes scrollChevronBounce{0%,to{transform:translateY(0);opacity:.75}50%{transform:translateY(6px);opacity:1}}@keyframes sunbeamPulse{0%,to{opacity:.55;transform:translate(-50%,-50%) scale(1)}50%{opacity:.88;transform:translate(-50%,-50%) scale(1.12)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.2s!important;scroll-behavior:auto!important}}
