@font-face{font-family:Estedad;src:url(./estedad-v5-variable-_uYi0ZM_.woff2)format("woff2");font-style:normal;font-weight:100 900;font-display:swap}@font-face{font-family:Cormorant;src:url(./cormorant-garamond-latin-400-normal-B-1hWBU7.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Cormorant;src:url(./cormorant-garamond-latin-500-normal-BsRWmXhO.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Cormorant;src:url(./cormorant-garamond-latin-400-italic-Dc_OZ8oc.woff2)format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Manrope;src:url(./manrope-latin-400-normal-PaqtzbVb.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Manrope;src:url(./manrope-latin-500-normal-BYYD-dBL.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Script;src:url(./great-vibes-latin-400-normal-q5-78SH_.woff2)format("woff2");font-display:swap}:root{--ivory:#FFF9F4;--cream:#F8F0E9;--dusty:#EBCFD2;--blush:#F4E1E3;--gold:#C6A46B;--rose:#9D6976;--sage:#899783;--cocoa:#49383B;--bg:var(--ivory)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--cocoa);font:400 1.06rem/2.05 Estedad,Tahoma,sans-serif;overflow-x:hidden;transition:background 1.2s;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}p,li,blockquote{font-kerning:normal}h1,h2,h3,.name,.mon{font-family:Estedad,Tahoma,sans-serif;font-weight:600;letter-spacing:-.012em}.gate-fa{font-size:clamp(1.1rem,3.5vw,1.45rem);line-height:2.1;font-weight:500}.hero .lead,.story p,.sheet p,.wishes li{line-height:2.15;letter-spacing:0}body.locked{overflow:hidden}body.glow{--bg:#FBEEE6}[hidden]{display:none!important}.en{font-family:Cormorant,Georgia,serif;direction:ltr;unicode-bidi:isolate}.small{font:500 .72rem Manrope,sans-serif;letter-spacing:.28em;text-transform:uppercase;color:var(--sage);direction:ltr}.kicker{font-size:1.25rem;font-style:italic;color:var(--rose)}.display{font-weight:400;font-size:clamp(3.4rem,16vw,9rem);line-height:.9;letter-spacing:-.02em}.display.sm{font-size:clamp(2.2rem,9vw,4.4rem);line-height:1.05}em{font-style:italic;color:var(--rose)}.name{font-weight:600;font-size:clamp(3rem,15vw,7rem);line-height:1.2;color:var(--cocoa)}.name.big{font-size:clamp(3.2rem,16vw,8rem)}.lead{max-width:30ch;font-size:1.1rem}#fx{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:40}section{position:relative;padding:18vh 7vw;overflow:hidden}.fl,.lf{position:absolute;pointer-events:none;height:auto}.fl{aspect-ratio:1}.lf{aspect-ratio:2/5}.fl{color:var(--dusty)}.lf{color:var(--sage);opacity:.5}#gate{position:fixed;inset:0;z-index:60;display:grid;place-items:center;text-align:center;background:radial-gradient(circle at 50% 40%,#fff 0,var(--ivory) 60%,var(--cream));transition:transform 1.4s cubic-bezier(.77,0,.18,1),opacity 1.4s}#gate.out{transform:translateY(-100%);opacity:.6}.gate-in{position:relative;z-index:2;display:grid;gap:1.2rem;justify-items:center;padding:2rem}.gate-fa{color:var(--rose)}.gate-in>*{animation:up 1.2s both}.gate-in>:nth-child(2){animation-delay:.25s}.gate-in>:nth-child(3){animation-delay:.5s}.gate-in>:nth-child(4){animation-delay:.8s}.f1{width:min(70vw,420px);top:-8%;right:-14%;animation:sway 9s ease-in-out infinite}.f2{width:min(46vw,260px);bottom:-6%;left:-10%;color:var(--blush);animation:sway 11s ease-in-out infinite reverse}.f3{width:min(24vw,140px);bottom:22%;right:8%;color:var(--blush);animation:sway 8s ease-in-out infinite}.l1{width:70px;top:14%;right:14%;transform:rotate(30deg)}.l2{width:90px;bottom:10%;left:12%;transform:rotate(-40deg)}.btn{font:500 1.15rem Cormorant,serif;letter-spacing:.14em;padding:1.05rem 2.4rem;min-height:48px;background:var(--cocoa);color:var(--ivory);border:0;border-radius:99px;cursor:pointer;position:relative;transition:transform .3s,background .3s;box-shadow:0 0 0 1px var(--gold),0 0 0 6px var(--ivory),0 0 0 7px #c6a46b80}.btn:hover,.btn:focus-visible{background:var(--rose)}.btn:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.hero{min-height:100svh;display:grid;align-content:center;padding-block:14vh 12vh}.hero-txt{position:relative;z-index:2;display:grid;gap:.6rem;justify-items:start}.hero-txt .display{margin-block:.4rem}.hero-photo{position:absolute;inset:0 auto 0 0;width:55%;margin:0;-webkit-mask:linear-gradient(to right,#000 55%,transparent);mask:linear-gradient(to right,#000 55%,transparent);opacity:.95}.hero-photo img{width:100%;height:100%;object-fit:cover;transform:none!important;will-change:auto;backface-visibility:hidden}.h1{width:min(60vw,380px);top:4%;left:-12%;animation:sway 10s ease-in-out infinite}.h2{width:min(26vw,150px);bottom:10%;left:18%;color:var(--blush)}.h3{width:70px;bottom:20%;right:6%;transform:rotate(20deg)}.scroll{position:absolute;bottom:3vh;left:50%;translate:-50% 0;animation:pulse 2.4s infinite}.details{text-align:center;background:var(--cream);display:grid;gap:.8rem;justify-items:center}.date{display:flex;align-items:baseline;gap:1rem;direction:rtl}.num{font:400 clamp(7rem,38vw,15rem)/.9 Cormorant,serif;color:var(--gold)}.mon{font-weight:600;font-size:clamp(2rem,9vw,4rem)}.age{font:italic 1.5rem Cormorant,serif;color:var(--rose)}.story{display:grid;gap:2.4rem;max-width:760px;margin-inline:auto}.story p{font-size:1.25rem;max-width:26ch}.story p:nth-child(2n){margin-inline-start:auto}blockquote{border-inline-start:2px solid var(--gold);padding-inline-start:1.4rem;font-size:1.5rem;font-weight:500;color:var(--rose);margin-top:1rem}.grid{columns:2;column-gap:1rem;margin-top:2rem}.grid button{display:block;width:100%;margin:0 0 1rem;border:0;background:#fff;padding:0;cursor:zoom-in;break-inside:avoid;overflow:hidden;border-radius:4px}.grid button:nth-child(3n+1){padding:8px 8px 34px;box-shadow:0 8px 24px #49383b1f;rotate:-1.5deg}.grid img{width:100%;display:block;transition:transform .8s}.grid button:hover img{transform:scale(1.04)}@media(min-width:800px){.grid{columns:3}}.cake{text-align:center;display:grid;gap:1.4rem;justify-items:center;background:linear-gradient(var(--ivory),var(--blush) 140%)}.cake-wrap{position:relative;width:min(88vw,420px)}.cake-svg{width:100%;display:block}.candles{position:absolute;top:2%;left:0;right:0;height:38%;display:flex;justify-content:center;gap:9%;padding-inline:20%}.candle{position:relative;width:9px;height:100%;background:none;border:0;cursor:pointer;align-self:end;direction:ltr}.candle:before{content:"";position:absolute;bottom:0;left:0;width:9px;height:55%;background:linear-gradient(90deg,#fff,var(--gold));border-radius:2px}.flame{position:absolute;bottom:57%;left:50%;translate:-50% 0;width:14px;height:24px;background:radial-gradient(ellipse at 50% 70%,#fff4c2,#f4b860 55%,transparent 72%);border-radius:50%/65% 65% 35% 35%;transform-origin:50% 90%;animation:flick .5s ease-in-out infinite alternate;filter:drop-shadow(0 0 8px rgba(244,184,96,.8));transition:opacity .5s,transform .5s}.candle.off .flame{opacity:0;transform:scale(.2) translateY(-8px);animation:none}.candle.off:after{content:"";position:absolute;bottom:60%;left:3px;width:3px;height:30px;background:linear-gradient(rgba(73,56,59,.35),transparent);filter:blur(2px);animation:smoke 2.2s forwards}.letter{text-align:center;display:grid;gap:2rem;justify-items:center}.env{position:relative;width:min(86vw,340px);aspect-ratio:3/2;border:0;background:none;cursor:pointer;perspective:900px;transition:transform .4s}.env:hover{transform:translateY(-4px) rotate(-.6deg)}.env>span{position:absolute;inset:0}.env-back{background:#efe3d6;border-radius:4px;box-shadow:0 18px 40px #49383b2e}.paper{inset:8% 7% 10%!important;background:#fffdf9;border-radius:2px;display:grid;align-content:start;gap:8px;padding:14px;transition:transform .9s .35s}.paper i{height:3px;background:var(--dusty);border-radius:2px}.paper i:nth-child(2){width:80%}.paper i:nth-child(3){width:60%}.env-front{clip-path:polygon(0 0,50% 58%,100% 0,100% 100%,0 100%);background:linear-gradient(135deg,var(--cream),#E9D9C8);border-radius:4px}.flap{clip-path:polygon(0 0,100% 0,50% 58%);background:linear-gradient(var(--cream),#E4D2BF);transform-origin:top;transition:transform .8s}.seal{inset:auto!important;top:50%;left:50%;translate:-50% -50%;width:54px;height:54px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#b5707e,var(--rose));display:grid;place-items:center;color:#f4d9b8;box-shadow:0 3px 8px #49383b4d;transition:opacity .4s}.seal svg{width:30px;height:30px}.env.open .flap{transform:rotateX(180deg)}.env.open .seal{opacity:0}.env.open .paper{transform:translateY(-42%)}.overlay{position:fixed;inset:0;z-index:80;display:grid;place-items:center;background:#49383b8c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:4vw;animation:fade .5s}.sheet{position:relative;background:#fffdf9;max-width:560px;max-height:88svh;overflow:auto;padding:3rem 2rem 2.4rem;border-radius:3px;box-shadow:0 30px 80px #0000004d;animation:unfold .9s cubic-bezier(.2,.8,.2,1);background-image:linear-gradient(transparent 97%,#c6a46b1f 97%);background-size:100% 2rem;border-top:3px double var(--gold)}.sheet p{margin-bottom:1rem;opacity:1;animation:none}.sheet p.letter-line{opacity:1;animation:up .65s ease-out both}#letterBody{direction:rtl;text-align:justify}#letterBody p:first-child{font-weight:600;color:var(--rose);font-size:1.18rem}#letterBody p:last-child{margin-bottom:1.4rem}.sign{font-family:Script,cursive;font-size:clamp(4rem,9vw,5.2rem);font-weight:400;line-height:1.2;letter-spacing:.015em;color:#986477;background:linear-gradient(125deg,#765064 8%,#c18a98,#80566d 88%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;direction:ltr;text-align:left;text-transform:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-shadow:0 5px 16px rgba(157,105,118,.1)}#letterSign{display:block;margin-top:1.15rem;padding:.15rem .3rem .4rem;min-height:4.8rem}.final .sign{font-size:clamp(4.2rem,10vw,5.6rem);text-align:center}.x{position:absolute;top:.4rem;inset-inline-start:.8rem;width:44px;height:44px;font-size:2rem;background:none;border:0;color:var(--cocoa);cursor:pointer;z-index:2}.sheet.small{text-align:center}.gold{width:64px;height:64px;color:var(--gold);animation:spin 14s linear infinite}.secretv{background:#ffecd6b3}.wishes{display:grid;gap:2rem}.wishes ul{list-style:none;display:grid;gap:1.6rem;max-width:760px}.wishes li{font-size:clamp(1.3rem,5vw,2rem);font-weight:500;position:relative;padding-inline-start:3rem;opacity:0;transform:translateY(24px);transition:1s}.wishes li.in{opacity:1;transform:none}.wishes li:before{content:"";position:absolute;inset-inline-start:0;top:1.1em;width:2rem;height:1px;background:var(--gold)}.wishes li:nth-child(2n){margin-inline-start:12vw;color:var(--rose)}.secret{position:absolute;bottom:5vh;left:9vw;width:22px;height:22px;border:0;background:none;color:var(--gold);opacity:.35;cursor:pointer;animation:pulse 3.4s infinite}.secret svg{width:100%;height:100%}.secret:hover,.secret:focus-visible{opacity:1}.final{min-height:90svh;text-align:center;display:grid;gap:1rem;justify-items:center;align-content:center;background:linear-gradient(var(--ivory),var(--blush))}.final .lead{max-width:24ch}.final .sign{text-align:center}.final .h1{inset:auto -14% -6% auto}.player{position:fixed;top:max(.8rem,env(safe-area-inset-top));left:.8rem;z-index:70;display:flex;align-items:center;gap:.7rem;padding:.4rem .9rem .4rem .4rem;background:#fff9f4d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:99px;box-shadow:0 0 0 1px #c6a46b99;direction:ltr}.player button{width:40px;height:40px;border-radius:50%;border:0;background:var(--cocoa);cursor:pointer;display:grid;place-items:center}.ico{width:0;height:0;border-left:11px solid var(--ivory);border-block:7px solid transparent;margin-left:3px}.playing .ico{width:12px;height:14px;border:0;margin:0;background:linear-gradient(90deg,var(--ivory) 35%,transparent 35% 65%,var(--ivory) 65%)}.player input{width:64px;accent-color:var(--rose)}.player .small{font-size:.62rem}.lb{background:#1e1618eb}.lb figure{max-width:92vw;text-align:center;color:#fff}.lb img{max-width:92vw;max-height:78svh;border-radius:3px;animation:fade .5s}.lb .nav{position:absolute;top:50%;width:52px;height:52px;border-radius:50%;border:0;background:#ffffff26;color:#fff;font-size:2rem;cursor:pointer}.prev{left:2vw}.next{right:2vw}.lb .x{color:#fff}.rv{opacity:0;transform:translateY(34px);filter:blur(6px);transition:opacity 1.1s,transform 1.1s cubic-bezier(.2,.8,.2,1),filter 1.1s}.rv.in{opacity:1;transform:none;filter:none}.d1{transition-delay:.2s}.d2{transition-delay:.4s}.d3{transition-delay:.6s}@keyframes up{0%{opacity:0;transform:translateY(24px)}}@keyframes fade{0%{opacity:0}}@keyframes unfold{0%{opacity:0;transform:perspective(900px) rotateX(-40deg) translateY(60px) scale(.9)}}@keyframes sway{50%{transform:rotate(6deg) translateY(10px)}}@keyframes flick{0%{transform:scale(1) rotate(-2deg)}to{transform:scale(.92,1.08) rotate(2deg)}}@keyframes smoke{to{transform:translateY(-40px);opacity:0}}@keyframes pulse{50%{opacity:.15}}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:600px){.hero{align-content:end;padding-top:62svh;padding-bottom:9vh}.hero-photo{inset:0 0 auto;width:100%;height:68svh;-webkit-mask:linear-gradient(#000 55%,transparent 100%);mask:linear-gradient(#000 55%,transparent 100%)}.hero-photo img{object-position:50% 12%}.hero-txt{justify-items:center;text-align:center}.hero .lead{margin-inline:auto}.figs{grid-template-columns:1fr!important}.player input{display:none}.num{font-size:34vw}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.rv,.wishes li{opacity:1;transform:none;filter:none}.sheet p.letter-line{opacity:1!important;animation:none!important;transform:none!important}}.hero{min-height:100vh;min-height:100svh}.hero-photo img{object-position:50% 15%;will-change:transform}.figs{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:start}.figs figure{margin:0;overflow:hidden;border-radius:2px;box-shadow:0 14px 34px #49383b24}.figs figure:nth-child(2){margin-top:3rem}.figs img,.final-photo img,.pol img{width:100%;display:block}.rv img,.pol img{filter:sepia(.85) blur(5px) brightness(1.15);transition:filter 2.6s .3s}.rv.in img,.pol.dev img{filter:none}.final-photo{margin:0 0 1rem;width:min(78vw,380px);padding:10px 10px 38px;background:#fff;box-shadow:0 18px 44px #49383b2e;rotate:-2.5deg}.pol{margin:0 auto 1.2rem;width:min(62vw,240px);padding:8px 8px 30px;background:#fff;box-shadow:0 10px 30px #49383b33;rotate:2deg}.grid button img{filter:sepia(.85) blur(5px) brightness(1.15);transition:filter 2.6s .2s,transform .8s}.grid button.in img{filter:none}.bloom{position:fixed;width:34px;height:34px;pointer-events:none;z-index:45;color:var(--dusty);animation:bl 1.2s forwards}@keyframes bl{0%{transform:translate(0) scale(.2) rotate(0);opacity:1}to{transform:translate(var(--dx),var(--dy)) scale(1) rotate(160deg);opacity:0}}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{min-width:320px}img,svg,canvas{max-width:100%}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}body.modal-open{overflow:hidden;position:fixed;width:100%}.player{top:max(.8rem,env(safe-area-inset-top));left:max(.8rem,env(safe-area-inset-left))}.overlay{padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left))}.sheet{max-height:min(88vh,88dvh);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.lb .x{top:max(.4rem,env(safe-area-inset-top))}.lb .nav{min-width:44px;min-height:44px}#play,.x,.nav,.btn{-webkit-appearance:none;appearance:none}@media(max-width:600px){section{padding:12svh 6vw}.hero{min-height:100vh;min-height:100svh;padding:55svh 6vw 9svh;align-content:end}.hero-photo{height:61svh}.hero-photo img{object-position:50% 15%}.hero .display{font-size:clamp(3rem,15vw,5.4rem)}.name,.name.big{font-size:clamp(2.6rem,13vw,4.8rem);overflow-wrap:anywhere}.lead{max-width:32ch;font-size:1rem}.story{gap:1.7rem}.story p{font-size:1.08rem}.grid{columns:2;column-gap:.65rem}.grid button{margin-bottom:.7rem}.grid button:nth-child(3n+1){padding:5px 5px 22px}.cake-wrap{width:min(88vw,360px)}.env{width:min(84vw,340px)}.sheet{width:100%;padding:2.8rem 1.2rem 1.5rem}.sheet p{overflow-wrap:anywhere}.player{gap:.45rem;padding:.35rem .65rem .35rem .35rem}.player button{width:44px;height:44px;flex:0 0 44px}.player .small{max-width:7rem;white-space:nowrap}.player input{display:none}.lb figure{max-width:100%}.lb img{max-width:88vw;max-height:76svh;object-fit:contain}.lb .nav{width:44px;height:44px;top:auto;bottom:max(1rem,env(safe-area-inset-bottom))}.prev{left:1rem}.next{right:1rem}}@media(max-width:380px){.hero{padding-top:52svh}.hero-photo{height:58svh}.display{font-size:clamp(2.8rem,14vw,4rem)}.date{gap:.45rem}.mon{font-size:clamp(1.6rem,8vw,2.5rem)}.wishes li{font-size:1.15rem}}body.modal-open{overflow:hidden;position:fixed;left:0;right:0;width:100%;overscroll-behavior:none}.sheet{width:min(100%,560px);max-height:calc(100dvh - 2rem);padding:clamp(2.8rem,7vw,3.4rem) clamp(1.15rem,5vw,2.2rem) 2rem;overscroll-behavior:contain}#letterBody p{overflow-wrap:break-word;word-break:normal}@media(max-width:600px){.hero-photo img{object-position:50% 12%;transform:none!important}.gate-fa{max-width:19rem;margin-inline:auto}.sheet{max-height:calc(100dvh - 1.5rem);padding:3rem 1.25rem 1.5rem}#letterBody{font-size:1rem;line-height:2.05}}:lang(fa),[dir=rtl]{font-family:Estedad,Tahoma,sans-serif}input,textarea,select,button{font-family:inherit}:root{--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px)}html{min-height:100%;min-height:100dvh;scroll-padding-top:calc(1rem + var(--safe-top))}body{min-height:100%;min-height:100dvh;overscroll-behavior-x:none}#gate{min-height:100vh;min-height:100svh;min-height:100dvh;padding-top:var(--safe-top);padding-right:var(--safe-right);padding-bottom:var(--safe-bottom);padding-left:var(--safe-left)}.hero,.final{min-height:100vh;min-height:100svh;min-height:100dvh}.overlay{min-height:100vh;min-height:100dvh;height:auto;box-sizing:border-box;overscroll-behavior:contain}.sheet{max-height:calc(100vh - var(--safe-top) - var(--safe-bottom) - 2rem);max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 2rem);padding-top:max(2.8rem,calc(2rem + var(--safe-top)));padding-bottom:max(1.5rem,calc(1rem + var(--safe-bottom)))}.player{top:calc(.65rem + var(--safe-top));left:calc(.65rem + var(--safe-left))}button,input[type=range]{touch-action:manipulation}@media(max-width:600px){.overlay{padding-top:calc(.75rem + var(--safe-top));padding-right:calc(.75rem + var(--safe-right));padding-bottom:calc(.75rem + var(--safe-bottom));padding-left:calc(.75rem + var(--safe-left))}.sheet{max-height:calc(100vh - var(--safe-top) - var(--safe-bottom) - 1.5rem);max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 1.5rem);padding-top:calc(2.8rem + var(--safe-top) * .25);padding-bottom:calc(1.25rem + var(--safe-bottom) * .25)}.lb figure{max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 7rem)}.lb img{max-height:calc(75dvh - var(--safe-top) - var(--safe-bottom))}}@media(orientation:landscape)and (max-height:500px){#gate{overflow-y:auto}.gate-in{padding-block:1.25rem;gap:.65rem}.gate-in .name{font-size:clamp(2.2rem,9vh,4rem)}.hero{padding-top:15vh;padding-bottom:12vh}.hero-photo{width:42%}.sheet{max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 1rem)}}@media(prefers-reduced-motion:reduce){#letterBody,#letterBody p,.sheet p.letter-line{opacity:1!important;visibility:visible!important;animation:none!important;transform:none!important}}
