@font-face{font-family:Great Vibes;font-style:normal;font-display:swap;font-weight:400;src:url(./great-vibes-latin-400-normal-q5-78SH_.woff2) format("woff2"),url(./great-vibes-latin-400-normal-BAZ173uY.woff) format("woff")}@font-face{font-family:Great Vibes;font-style:normal;font-display:swap;font-weight:400;src:url(./great-vibes-latin-ext-400-normal-CsjMq8GN.woff2) format("woff2"),url(./great-vibes-latin-ext-400-normal-wh4xxCIu.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(./cormorant-garamond-latin-400-normal-B-1hWBU7.woff2) format("woff2"),url(./cormorant-garamond-latin-400-normal-B7YtguxJ.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url(./cormorant-garamond-latin-ext-400-normal-Drx2k2n9.woff2) format("woff2"),url(./cormorant-garamond-latin-ext-400-normal-uvC0WHQr.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:500;src:url(./cormorant-garamond-latin-500-italic-Y14P-dkT.woff2) format("woff2"),url(./cormorant-garamond-latin-500-italic-DhNIfkTX.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:500;src:url(./cormorant-garamond-latin-ext-500-italic-CE7zdTnu.woff2) format("woff2"),url(./cormorant-garamond-latin-ext-500-italic-CalKM9tT.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(./cormorant-garamond-latin-600-normal-Co1r35X9.woff2) format("woff2"),url(./cormorant-garamond-latin-600-normal-2CBVLo0M.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(./cormorant-garamond-latin-ext-600-normal-DaBc-lu7.woff2) format("woff2"),url(./cormorant-garamond-latin-ext-600-normal-Dk3-quAP.woff) format("woff")}.trip-ending{width:min(100%,650px);margin:36px auto 0;position:relative;scroll-margin-top:calc(var(--safe-top, 0px) + 18px)}.trip-teaser{text-align:center;padding:15px 12px 18px}.trip-teaser .flourish>svg{width:25px;height:25px}.trip-teaser .flourish>span{width:55px}.trip-teaser h2{font-size:25px;font-weight:500;font-style:italic;line-height:1.35;max-width:370px;margin:20px auto;color:#945863}.trip-open-button{display:block;width:min(100%,390px);min-height:58px;padding:13px 20px;margin:0 auto;border:1px solid #d6ad78;border-radius:34px;box-shadow:0 0 0 2px #fff0d7,0 5px 15px #ad6c6333,inset 0 1px #f9c7b8;background:linear-gradient(155deg,#df9ba2,#bb6e7e 65%,#a85c70);color:#fff8e9;font-size:22px;font-style:italic;line-height:1.25;touch-action:manipulation;transition:opacity .18s,transform .18s}.trip-open-button:disabled{opacity:.35;transform:translateY(3px)}.trip-card{position:relative;padding:27px 42px 20px;border:1px solid #cf9e69;border-radius:32px 32px 16px 16px;background:repeating-linear-gradient(32deg,#fff2e2 0px 2px,#fff0df 3px 4px);box-shadow:0 0 0 3px #f6dfc2,0 0 0 4px #d7ac7b,0 12px 30px #9c615529,inset 0 0 45px #e9c39944;color:#85515a;transform-origin:50% 0}.trip-card:before{content:"";position:absolute;inset:8px;border:1px solid #dfbc94;border-radius:25px 25px 10px 10px;pointer-events:none}.trip-card-ornament{display:flex;align-items:center;justify-content:center;gap:16px;color:#c99168;margin:0 auto 12px}.trip-card-ornament>svg{width:53px;height:40px}.trip-card-ornament>svg:nth-child(2){width:28px;height:28px}.trip-card-ornament>svg:last-child{transform:scaleX(-1)}.trip-eyebrow{text-align:center;font-family:system-ui,sans-serif;font-size:11px;line-height:1.5;letter-spacing:2px;text-transform:uppercase;color:#a16970;margin:10px 0 17px}.trip-card h2{font-family:var(--script);font-size:48px;font-weight:400;line-height:1.3;text-align:center;color:#995562;margin:0 -14px 19px;outline:none}.trip-destination{text-align:center;margin:0 auto 28px}.trip-destination>p{font-size:35px;font-weight:600;line-height:1.2;letter-spacing:5px;margin:0 0 14px;padding-left:5px}.trip-dates{display:flex;justify-content:center;align-items:center;gap:9px;width:fit-content;max-width:100%;margin:auto;padding:8px 17px;border:1px solid #d5ae7c;border-radius:12px 4px;box-shadow:inset 0 0 0 3px #fff2dd;background:#fbe7cd;font-size:23px;font-style:italic;line-height:1.3;color:#895449}.trip-dates>svg{width:22px;height:22px;flex-shrink:0;color:#b48558}.trip-copy{max-width:480px;margin:auto;font-size:22px;line-height:1.55;font-style:italic;text-align:center;overflow-wrap:anywhere}.trip-copy>p{margin:0 0 20px}.trip-copy .trip-salutation{font-size:25px;margin-bottom:20px}.trip-signature{margin:24px auto 4px}.trip-signature>p{margin:0}.trip-signature>p:first-child{font-size:19px}.trip-signature>p:last-child{font-family:var(--script);font-size:33px;font-style:normal;margin-top:6px}.trip-bears{position:relative;width:min(100%,310px);aspect-ratio:1.55;margin:10px auto 0}.trip-bears .bear{top:10%;width:46%}.trip-bears .bear--dudu{left:4%}.trip-bears .bear--bubu{right:2%;top:13%}.trip-gift-edge{position:absolute;bottom:3%;left:5%;right:5%;border-top:1px solid #d6ab78;padding-top:9px}.trip-gift-edge .flourish{gap:10px}.trip-gift-edge .flourish>span{width:45px}.trip-gift-edge .flourish>svg{width:18px;height:18px}.trip-gift-hearts{position:absolute;top:6%;left:42%;width:18%;color:#d68792;pointer-events:none}.trip-gift-hearts>svg{position:absolute;width:22px;opacity:0;fill:#efabb366}.trip-gift-hearts>svg:nth-child(2){left:26px;top:10px;width:15px}.trip-gift-hearts>svg:nth-child(3){left:12px;top:20px;width:12px}.trip-flowers{position:absolute;bottom:35px;width:70px;height:90px;pointer-events:none}.trip-flowers-left{left:-18px}.trip-flowers-right{right:-18px;transform:scaleX(-1)}.trip-flowers>svg:first-child{position:absolute;width:65px;top:25px;transform:rotate(48deg)}.trip-flowers>svg:last-child{position:absolute;width:49px;top:0}.trip-floating-hearts{position:absolute;top:110px;left:0;right:0;color:#d48b94;pointer-events:none}.trip-floating-hearts>svg{position:absolute;width:19px;left:6%;opacity:0}.trip-floating-hearts>svg:nth-child(2){left:auto;right:7%;top:36px;width:15px}.trip-floating-hearts>svg:nth-child(3){top:85px;left:8%;width:12px}.trip-back-button{display:flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:9px 20px;margin:25px auto 0;border:1px solid #c99b8d;border-radius:28px;background:#fff0df77;color:#945b64;font-size:18px;touch-action:manipulation}.trip-back-button>span{font-size:22px}#memories-heading{scroll-margin-top:calc(var(--safe-top, 0px) + 24px)}#memories-heading:focus{outline:none}.trip-revealing .trip-card{animation:trip-unfold 1.8s cubic-bezier(.2,.7,.25,1) both}.trip-revealing .trip-copy{animation:trip-text 1.8s ease-out both}.trip-revealing .trip-floating-hearts>svg{animation:trip-heart 1.5s .25s ease-out both}.trip-bears-presenting .bear--dudu{animation:trip-dudu 1.8s ease-in-out both}.trip-bears-presenting .bear--bubu{animation:trip-bubu 1.8s ease-in-out both}.trip-bears-presenting .bear-paw{animation:trip-paw 1.8s ease-in-out both}.trip-bears-presenting .trip-gift-hearts>svg{animation:trip-heart 1.6s .15s ease-out both}.trip-bears-presenting .trip-gift-hearts>svg:nth-child(2){animation-delay:.3s}.trip-bears-presenting .trip-gift-hearts>svg:nth-child(3){animation-delay:.45s}@keyframes trip-unfold{0%{opacity:0;transform:translateY(22px) scale(.96)}45%{opacity:1}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes trip-text{0%,18%{opacity:0}to{opacity:1}}@keyframes trip-heart{0%{opacity:0;transform:translateY(12px) scale(.6)}30%{opacity:.8}to{opacity:0;transform:translateY(-35px) scale(1.1) rotate(12deg)}}@keyframes trip-dudu{0%,to{transform:rotate(-6deg)}45%{transform:translate(5%,-5%) rotate(1deg)}}@keyframes trip-bubu{0%,to{transform:rotate(6deg)}45%{transform:translate(-5%,-5%) rotate(-1deg)}}@keyframes trip-paw{0%,to{transform:translateY(0)}45%{transform:translateY(-12px)}}@media(max-width:600px){.trip-ending{width:calc(100% - 5px);margin-top:28px}.trip-teaser{padding:10px 8px 15px}.trip-teaser h2{font-size:23px;margin:18px auto}.trip-open-button{font-size:20px;padding:13px 12px}.trip-card{padding:23px 23px 17px;border-radius:28px 28px 14px 14px}.trip-card:before{inset:7px;border-radius:22px 22px 9px 9px}.trip-card h2{font-size:clamp(33px,9.7vw,40px);margin:0 -13px 20px}.trip-eyebrow{font-size:10px;letter-spacing:1.7px}.trip-destination>p{font-size:30px;letter-spacing:4px;padding-left:4px}.trip-dates{padding:8px 12px;font-size:20px;gap:7px}.trip-dates>svg{width:20px;height:20px}.trip-copy{font-size:19px;line-height:1.55}.trip-copy .trip-salutation{font-size:23px}.trip-signature>p:first-child{font-size:18px}.trip-signature>p:last-child{font-size:30px}.trip-flowers{width:45px;height:65px;bottom:28px}.trip-flowers-left{left:-14px}.trip-flowers-right{right:-14px}.trip-flowers>svg:first-child{width:44px;top:18px}.trip-flowers>svg:last-child{width:36px}.trip-back-button{font-size:17px}}@media(hover:hover){.trip-open-button:not(:disabled):hover{transform:translateY(-2px)}.trip-back-button:hover{background:#fff2e4}}@media(prefers-reduced-motion:reduce){.trip-ending *,.trip-ending *:before{animation:none!important;transition:none!important}.trip-card,.trip-copy{opacity:1;transform:none}}:root{font-family:Cormorant Garamond,Georgia,serif;color:#773b35;background:#f2d5d0;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;font-weight:400;--wine: #77342d;--rose: #bc6375;--gold: #ca995f;--cream: #fff2df;--script: "Great Vibes",cursive}*{box-sizing:border-box}body{margin:0;min-width:320px}button{font:inherit;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:3px solid #7e414a;outline-offset:6px}button:disabled{cursor:wait}svg{display:block}button{cursor:pointer}::selection{background:#edb5b9;color:#592a26}.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}.anniversary-page{min-height:100svh;position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% 26%,#fff4e4 0%,#fce5d8 23%,#f2d0cd88 47%,transparent 70%),radial-gradient(ellipse at 2% 0%,#aa9ab0 0%,transparent 39%),radial-gradient(ellipse at 98% 8%,#bca5b8 0%,transparent 40%),linear-gradient(155deg,#e5bfca,#f9dfcc 60%,#e3bac1)}.anniversary-page:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.2;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.73' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.3' d='M0 0h160v160H0z'/%3E%3C/svg%3E")}.page-content{position:relative;z-index:1;width:min(100%,760px);margin:auto;padding:38px 24px 28px}.page-header{text-align:center;position:relative;z-index:3}.flourish{display:flex;align-items:center;justify-content:center;gap:18px;color:#c98b60}.flourish>span{width:82px;height:1px;background:linear-gradient(90deg,transparent,#bd7c4c);box-shadow:0 1px #fff1c1}.flourish>span:last-child{transform:rotate(180deg)}.flourish>svg{width:32px;height:32px;filter:drop-shadow(0 1px #fff6dd)}.title-row{display:flex;align-items:center;justify-content:center;gap:22px;margin:12px 0 8px}.title-row h1{font-family:var(--script);font-size:clamp(64px,10vw,96px);font-weight:400;line-height:1.18;margin:0;color:#743327;text-shadow:0 2px 0 #fff2dfaa;letter-spacing:-1px}.title-row>svg{width:37px;flex-shrink:0;color:#dd7c89;transform:rotate(-17deg)}.title-row>svg:last-child{transform:rotate(19deg) translateY(8px)}.date-row{display:flex;align-items:center;justify-content:center;gap:15px}.date-row>.sprig,.date-row>svg{width:68px;height:52px}.date-row>svg:last-child{transform:scaleX(-1)}.date-badge{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;padding:6px 20px;border:1px solid #c89453;border-radius:15px 6px;background:linear-gradient(#ffefd6cc,#ffead4bb);box-shadow:0 0 0 3px #ffe0b590,0 0 0 4px #d8a66c77,inset 0 0 0 3px #fff2d5,0 4px 8px #bd80562b}.date-badge:before,.date-badge:after{content:"♡";position:absolute;left:calc(50% - 7px);top:-13px;background:#ffebd9;color:#be8b4e;font-size:19px;line-height:1}.date-badge:after{top:auto;bottom:-11px}.date-badge>svg{width:23px;height:23px;color:#bc814d}.date-badge time{font-size:31px;font-weight:600;font-style:italic;line-height:1.2;font-variant-numeric:lining-nums;white-space:nowrap}.date-year{font-size:22px;font-weight:400}.anniversary{font-size:31px;font-style:italic;line-height:1.3;margin:18px 0 0;letter-spacing:.4px}.ambience{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}.fairy-lights{position:absolute;top:0;left:50%;transform:translate(-50%);width:max(100%,850px);height:210px}.fairy-bulb{animation:twinkle 4s ease-in-out infinite alternate}.sparkle{position:absolute;color:#fff7da;font-size:25px;text-shadow:0 0 9px #ffcf87,0 0 20px #ffdd9e;animation:twinkle 3s ease-in-out infinite alternate}.bokeh{position:absolute;border-radius:50%;background:#fff2d288;filter:blur(20px)}.bokeh--one{width:100px;height:100px;top:37%;left:4%}.bokeh--two{width:75px;height:75px;top:16%;right:8%}.bokeh--three{width:120px;height:120px;bottom:17%;right:0}.flower-branch{position:absolute;width:230px;height:330px;opacity:.7;filter:blur(.3px)}.flower-branch>svg:first-child{position:absolute;width:250px;transform:rotate(-90deg);top:100px;left:10px}.flower-branch>svg:not(:first-child){position:absolute;width:85px}.flower-branch>svg:nth-child(2){top:80px;left:26px}.flower-branch>svg:nth-child(3){top:142px;left:84px;width:70px}.flower-branch>svg:nth-child(4){top:30px;left:105px;width:65px}.flower-branch--right{right:-95px;top:23%;transform:rotate(-18deg)}.flower-branch--left{left:-120px;bottom:0;transform:rotate(23deg);filter:blur(1.3px);opacity:.8}.flower-branch--left>svg:not(:first-child){filter:hue-rotate(300deg) saturate(.6)}.candle{position:absolute;width:76px;height:100px;border-radius:5px 5px 17px 17px;background:linear-gradient(90deg,#b7825b77,#fff0b9bb 48%,#c8946377);border:2px solid #eac397;box-shadow:0 0 35px #ffe4aa88,inset 0 0 20px #fff1be}.candle:before{content:"";position:absolute;left:-2px;right:-2px;top:-8px;height:14px;border:2px solid #d3a471;border-radius:50%;background:#ffe9bd}.candle>svg{width:29px;position:absolute;left:21px;top:39px;fill:#fff8c5;stroke:#fff8c5;filter:drop-shadow(0 0 10px #fff7c1)}.flame{width:12px;height:27px;background:linear-gradient(#fff7d9,#ffda87);border-radius:70% 30% 50% 50%;position:absolute;top:-32px;left:30px;box-shadow:0 0 14px #fff5ba,0 0 33px #ffd891;animation:flicker 3s ease-in-out infinite alternate}.candle--left{left:-23px;top:56%;transform:rotate(-3deg);opacity:.7;filter:blur(1px)}.candle--right{right:2%;bottom:5%;transform:rotate(3deg)}.petal{position:absolute;width:26px;height:40px;border-radius:70% 20%;background:linear-gradient(135deg,#f3aeb7,#c87690);box-shadow:1px 6px 8px #925d5933;opacity:.75}.petal--one{left:4%;bottom:25%;transform:rotate(65deg)}.petal--two{right:4%;top:69%;transform:rotate(-55deg);width:20px;height:29px}.petal--three{right:15%;bottom:2%;transform:rotate(24deg)}.invitation{position:relative}.envelope-stage{position:relative;width:min(100%,610px);aspect-ratio:1.19;margin:14px auto 0;perspective:1100px}.stage-glow{position:absolute;inset:30% 6% 0;border-radius:50%;background:#fff0bd;filter:blur(35px);opacity:.45}.bear-pair{position:absolute;inset:0;z-index:6;pointer-events:none}.bear{position:absolute;top:-5%;width:39%;height:auto;overflow:visible;filter:drop-shadow(0 4px 2px #814c3426)}.bear--dudu{left:10%;transform:rotate(-6deg);transform-origin:50% 100%}.bear--bubu{right:8%;top:-3%;transform:rotate(6deg);transform-origin:50% 100%}.bear-name{position:absolute;font-family:var(--script);font-size:25px;line-height:1;z-index:1}.bear-name--dudu{left:1%;top:3%;transform:rotate(-17deg)}.bear-name--bubu{right:-1%;top:2%;transform:rotate(15deg)}.bear-name>span{display:block;font-family:Georgia,serif;font-size:33px;padding-left:20px;color:#ac6160;transform:rotate(-12deg)}.bear-name--bubu>span{transform:scaleX(-1);padding-left:0;padding-right:15px}.bear-hearts{position:absolute;left:47%;top:3%;width:10%;color:#e88c96;transform:rotate(10deg)}.bear-hearts svg:first-child{fill:#f7b0ad88;filter:drop-shadow(0 2px #fff4df);width:100%;animation:heart-breathe 3s ease-in-out infinite}.bear-hearts svg:last-child{width:45%;margin:5px 0 0 10px;fill:#f8b4b5aa;transform:rotate(-20deg)}.bear-paw{transform-box:fill-box;transform-origin:center}.envelope{position:absolute;left:0;right:0;bottom:6%;height:58%;filter:drop-shadow(0 15px 12px #a35b4933);transform-style:preserve-3d}.envelope-back{position:absolute;inset:0;background:linear-gradient(#c79371,#e3b997);border:1px solid #c8945b;border-radius:6px 6px 10px 10px;z-index:1}.envelope-front{position:absolute;inset:0;width:100%;height:100%;z-index:4}.envelope-flap{position:absolute;top:0;width:100%;height:64%;z-index:5;transform-origin:center top;transform-style:preserve-3d;filter:drop-shadow(0 3px 2px #9b693836)}.envelope-flap>svg{width:100%;height:100%;display:block}.flap-decoration{position:absolute;top:19%;left:30%;width:40%;height:34%;display:flex;align-items:center;justify-content:center;gap:0;color:#cd8a68}.flap-decoration>svg:first-child,.flap-decoration>svg:last-child{width:30%;height:100%;margin-right:7%}.flap-decoration>svg:last-child{transform:scaleX(-1);margin:0 0 0 7%}.flap-decoration>svg:nth-child(2){width:23%;transform:rotate(-9deg);flex-shrink:0}.flap-decoration>svg:nth-child(3){width:23%;margin-left:-7%;transform:rotate(9deg);flex-shrink:0}.ribbon{position:absolute;z-index:7;left:0;top:30%;width:100%;height:auto;overflow:visible;filter:drop-shadow(0 3px 2px #8f435548)}.wax-seal{transform-origin:50% 42%}.ribbon-loop{transform-box:fill-box;transform-origin:center}.little-letter{position:absolute;z-index:2;top:8%;left:13%;width:74%;height:86%;padding:18px 16px;text-align:center;border:1px solid #cb945b;border-radius:7px;background:repeating-linear-gradient(35deg,#fff2df 0px 2px,#fff0dd 3px 4px);box-shadow:0 0 0 5px #fff0dc,0 3px 7px #92684c33;opacity:0}.little-letter:after{content:"";position:absolute;inset:6px;border:1px solid #d8ab74;border-radius:4px}.little-letter>.flourish{gap:8px}.little-letter>.flourish svg{width:25px}.little-letter>.flourish span{width:35px}.little-letter>span{display:block;font-family:var(--script);font-size:clamp(25px,5vw,45px);margin:8px 0 0}.little-letter>p{font-size:16px;font-style:italic;margin:0}.little-letter>svg{width:23px;margin:12px auto;color:#cc7c7f}.heart-burst{position:absolute;inset:0;z-index:9;pointer-events:none}.burst-heart{position:absolute;left:calc(50% - 12px);top:56%;width:25px;color:#d87885;fill:#f6aaad;opacity:0;--x: -80px;--y: -180px;--r: -20deg;--delay: 0s}.burst-heart--1{--x: 70px;--y: -180px;--r: 20deg;--delay: .15s;width:33px}.burst-heart--2{--x: -120px;--y: -110px;--delay: .3s;width:15px}.burst-heart--3{--x: 140px;--y: -120px;--r: 35deg;--delay: .4s}.burst-heart--4{--x: 0px;--y: -210px;--r: 10deg;--delay: .55s;width:32px}.burst-heart--5{--x: -55px;--y: -135px;--delay: .65s;width:17px}.burst-heart--6{--x: 90px;--y: -240px;--delay: .7s;width:16px}.burst-heart--7{--x: -110px;--y: -240px;--delay: .8s;width:20px}.burst-heart--8{--x: 40px;--y: -160px;--delay: .9s;width:18px}.burst-heart--9{--x: -15px;--y: -270px;--delay: 1s;width:15px}.invitation-action{position:relative;z-index:10;text-align:center;margin:16px auto 0}.invitation-note{font-size:19px;font-style:italic;margin:0 0 15px;color:#915b53}.open-button{position:relative;display:flex;align-items:center;justify-content:center;gap:18px;width:min(100%,390px);min-height:75px;margin:auto;padding:13px 24px;color:#fff4dd;border:1px solid #e8bf82;border-radius:50px;background:linear-gradient(172deg,#e39b9e,#c16d7b 31%,#a64f61 78%,#c6757e);box-shadow:0 0 0 2px #fff0c7,0 0 0 3px #d3a05e,0 8px 20px #a85d5650,inset 0 0 0 3px #efb2a455,inset 0 3px 7px #ffd7c666;transition:transform .25s,box-shadow .25s;line-height:1.2;text-shadow:0 1px 2px #873b49;font-style:italic;font-weight:600;font-size:32px}.open-button>svg{width:32px;height:29px;flex-shrink:0}.button-arrow{font-family:Georgia,serif;font-size:37px;line-height:.7;margin-left:3px;font-weight:400}.open-button:disabled{background:linear-gradient(150deg,#ffe9d3,#f2cabd);color:#924b50;text-shadow:none;box-shadow:0 0 0 2px #fff0c7,0 0 0 3px #d3a05e,0 6px 23px #eeb98b88;font-size:28px}.loading-heart svg{width:27px;height:27px;animation:heart-breathe .7s ease-in-out infinite}.invitation-whisper{font-size:14px;letter-spacing:.6px;margin:17px 0 0;color:#8b605b}.invitation-whisper span{margin-left:3px}footer{text-align:center;margin:35px auto 0;padding-bottom:env(safe-area-inset-bottom)}footer .flourish{gap:15px}footer .flourish>svg{width:25px;height:25px;color:#c7797d}footer .flourish>span{width:62px}footer p{font-family:var(--script);font-size:25px;margin:14px 0 2px;color:#9b6560}footer>span{font-family:Georgia,serif;font-size:9px;letter-spacing:3px;color:#9f7770}.letter-view{position:relative;width:min(100%,650px);margin:12px auto 0;padding-top:163px}.bear-pair--compact{height:215px;left:10%;right:10%;z-index:3}.bear-pair--compact .bear{width:43%;top:-8%}.bear-pair--compact .bear--dudu{left:6%}.bear-pair--compact .bear--bubu{right:4%;top:-5%}.bear-pair--compact .bear-name--dudu{left:-10%;top:11%}.bear-pair--compact .bear-name--bubu{right:-12%;top:9%}.bear-pair--compact .bear-hearts{top:1%;width:11%;left:46%}.letter-paper{position:relative;z-index:2;background:repeating-linear-gradient(32deg,#fff2e2 0px 2px,#fff0df 3px 4px);border:1px solid #c49259;border-radius:42px 42px 16px 16px;box-shadow:0 0 0 4px #f7ddbd,0 0 0 5px #d6a369,0 14px 40px #9c615529,inset 0 0 45px #e9c39966;padding:25px 42px 105px}.letter-paper:before{content:"";position:absolute;inset:8px;border:1px solid #dbb78a;border-radius:34px 34px 10px 10px;pointer-events:none}.letter-top-ornament{display:flex;align-items:center;justify-content:space-between;margin:0 auto 2px;width:90%}.letter-top-ornament>svg{width:62px;height:50px}.letter-top-ornament>svg:last-child{transform:scaleX(-1)}.letter-top-ornament .flourish{gap:13px}.letter-top-ornament .flourish>span{width:48px}.letter-top-ornament .flourish>svg{width:28px}.letter-paper h2{font-family:var(--script);font-weight:400;font-size:54px;line-height:1.25;text-align:center;color:var(--wine);margin:5px -18px 17px;outline:none}.letter-copy{max-width:460px;margin:auto;text-align:center;font-size:22px;line-height:1.5;font-style:italic;color:#783f37}.letter-copy p{margin:0 0 18px}.letter-copy .salutation{margin-bottom:18px}.letter-copy .letter-closing{font-family:var(--script);font-style:normal;font-size:40px;display:flex;align-items:center;justify-content:center;gap:10px;margin:22px 0 0}.letter-closing svg{width:28px;height:28px;color:#c8797d;transform:rotate(15deg)}.letter-copy .signature{font-size:18px;margin:4px 0 0;color:#a26c5c}.small-divider{display:flex;align-items:center;justify-content:center;gap:16px;color:#c7965e;font-size:16px;margin:26px 0}.small-divider svg{width:16px;height:16px}.memories-heading{display:flex;align-items:center;justify-content:center;gap:11px;border:1px solid #dab27d;border-radius:14px 5px;background:linear-gradient(120deg,#fff2df,#f9e3c8,#fff2df);box-shadow:inset 0 0 0 3px #fff0d8,0 2px 5px #c1955c22;padding:7px 12px;margin:0 auto;width:fit-content;max-width:100%}.memories-heading>svg:first-child{width:25px;height:23px;color:#b97b4a;flex-shrink:0}.memories-heading>svg:last-child{width:20px;height:20px;flex-shrink:0}.memories-heading h3{font-size:26px;font-style:italic;font-weight:500;margin:0;line-height:1.2}.memories-subtitle{text-align:center;font-size:15px;font-style:italic;color:#a77a68;margin:10px 0 28px}.polaroid-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 22px;padding:2px 1px 10px}.polaroid{position:relative;min-width:0;margin:0;padding:9px 9px 0;background:#fffaf0;border:1px solid #ecd5bb;box-shadow:1px 5px 9px #9f735633;transform:rotate(var(--tilt));transition:transform .35s,box-shadow .35s}.washi-tape{position:absolute;width:57px;height:20px;top:-10px;left:calc(50% - 28px);z-index:1;transform:rotate(-8deg);opacity:.85;background:repeating-linear-gradient(45deg,#eaa6a7 0px 3px,#efb3b1 3px 5px);clip-path:polygon(2% 0,98% 3%,95% 17%,100% 31%,95% 45%,100% 60%,95% 76%,100% 100%,0 97%,4% 79%,0 65%,5% 49%,0 33%,5% 19%)}.photo-area{aspect-ratio:1.15;background:#f2e0d0;overflow:hidden}.photo-area>img{display:block;width:100%;height:100%;object-fit:cover}.photo-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;position:relative;background:radial-gradient(ellipse at 40% 30%,#ffefdd,#e9c4be);color:#a97669;text-align:center;padding:12px}.photo-placeholder:before{content:"";position:absolute;inset:8px;border:1px dashed #bf928766}.photo-placeholder>svg:first-child{width:31px;height:28px;opacity:.55}.photo-placeholder>span{font-size:14px;font-style:italic;line-height:1.15;max-width:100px}.photo-placeholder>svg:last-child{width:16px;height:16px;opacity:.6}.photo-placeholder--1{background:radial-gradient(ellipse at 60% 30%,#fff1d9,#e8cebd)}.photo-placeholder--2{background:radial-gradient(ellipse at 40% 50%,#f9e6e3,#dbc2c8)}.photo-placeholder--3{background:radial-gradient(ellipse at 65% 30%,#fff0dc,#ddc7b5)}.polaroid figcaption{font-size:17px;font-style:italic;text-align:center;line-height:1.2;padding:10px 0 12px;color:#855042}.polaroid figcaption span{color:#bf7479;white-space:nowrap}.paper-flowers{position:absolute;width:105px;height:140px;pointer-events:none;z-index:4}.paper-flowers>svg{position:absolute}.paper-flowers>svg:first-child{width:100px;top:35px;transform:rotate(35deg)}.paper-flowers>svg:nth-child(2){width:75px;left:15px;top:10px}.paper-flowers>svg:nth-child(3){width:55px;top:62px;left:0}.paper-flowers--left{left:-34px;bottom:330px;transform:rotate(-20deg)}.paper-flowers--right{right:-38px;bottom:175px;transform:rotate(20deg)}.letter-postscript{position:relative;text-align:center;font-size:16px;font-style:italic;margin:27px 0 3px;color:#ac7967}.letter-envelope-bottom{position:relative;height:190px;margin-top:-90px;z-index:5;pointer-events:none;filter:drop-shadow(0 10px 8px #9c615533)}.letter-envelope-bottom>div{position:absolute;inset:0;background:linear-gradient(155deg,#fff0db,#f0d0bd 50%,#f8dfcb);clip-path:polygon(0 0,50% 51%,100% 0,100% 96%,99% 100%,1% 100%,0 96%);border:1px solid #cca270;border-radius:0 0 10px 10px}.letter-envelope-bottom>div:before,.letter-envelope-bottom>div:after{content:"";position:absolute;top:0;width:56%;height:2px;background:#c89458;transform:rotate(17deg);transform-origin:0 0;box-shadow:0 2px #ffe5b9}.letter-envelope-bottom>div:after{right:0;transform:rotate(-17deg);transform-origin:100% 0}.letter-envelope-bottom>.ribbon{top:2%;left:8%;width:84%}.letter-envelope-bottom>svg:not(.ribbon){position:absolute;width:15%;left:5%;top:41%;transform:rotate(5deg)}.letter-envelope-bottom>svg:nth-child(3){left:auto;right:5%;transform:scaleX(-1)}.replay-button{display:flex;align-items:center;justify-content:center;gap:8px;font-size:17px;color:#8c5653;margin:29px auto 0;min-height:44px;border:1px solid #bd8b7777;border-radius:30px;padding:8px 20px;background:#fff0e155;transition:background .2s}.replay-button>span{font-size:26px;line-height:1}.is-open footer{margin-top:25px}@media(hover:hover){.open-button:not(:disabled):hover{transform:translateY(-3px);box-shadow:0 0 0 2px #fff0c7,0 0 0 3px #d3a05e,0 12px 28px #a85d5666,inset 0 0 0 3px #efb2a455,inset 0 3px 7px #ffd7c666}.polaroid:hover{transform:rotate(0) translateY(-4px);box-shadow:1px 9px 16px #9f735644;z-index:2}.replay-button:hover{background:#fff2e4}}.open-button:not(:disabled):active{transform:translateY(1px) scale(.98)}@keyframes twinkle{0%{opacity:.45}to{opacity:1}}@keyframes flicker{0%,to{transform:rotate(-4deg) scale(.93)}50%{transform:rotate(5deg) scale(1.07)}}@keyframes heart-breathe{0%,to{transform:scale(.93)}50%{transform:scale(1.07)}}@media(min-width:900px){.page-content{padding-top:35px}.anniversary-page{background:radial-gradient(ellipse at 50% 30%,#fff3e3 0%,#fbe1d5 28%,#edc9ca77 52%,transparent 80%),radial-gradient(ellipse at 0 0,#b2a0b4,transparent 60%),linear-gradient(135deg,#e5c3ce,#f5d5c7 60%,#d7b5bf)}.fairy-lights{height:230px}.flower-branch--right{right:3%;top:24%;transform:scale(1.3) rotate(-18deg)}.flower-branch--left{left:1%;bottom:0;transform:scale(1.5) rotate(23deg)}.candle--left{left:7%;top:56%;transform:scale(1.4)}.candle--right{right:9%;bottom:10%;transform:scale(1.5)}.envelope-stage{margin-top:17px}.page-header>.flourish>span{width:100px}}@media(max-width:600px){.page-content{padding:35px 22px 23px}.fairy-lights{height:100px;width:100%}.page-header>.flourish{gap:14px}.page-header>.flourish>span{width:53px}.page-header>.flourish>svg{width:27px;height:27px}.title-row{gap:12px;margin:13px -7px 11px}.title-row h1{font-size:67px}.title-row>svg{width:25px}.date-row{gap:10px}.date-row>svg{width:47px;height:40px}.date-badge{padding:7px 14px;gap:7px}.date-badge time{font-size:26px}.date-year{font-size:18px}.date-badge>svg{width:21px;height:21px}.anniversary{font-size:26px;margin-top:15px}.envelope-stage{width:100%;margin-top:25px;aspect-ratio:1.05}.bear{top:0%;width:41%}.bear--dudu{left:8%}.bear--bubu{top:2%;right:6%}.bear-name{font-size:23px}.bear-name--dudu{left:0;top:2%}.bear-name--bubu{right:-1%;top:2%}.bear-name>span{font-size:27px;padding-left:12px}.bear-hearts{top:6%;left:46%;width:10%}.envelope{height:54%;bottom:8%}.flap-decoration{top:17%}.invitation-action{margin-top:-5px}.invitation-note{font-size:17px;margin-bottom:14px}.open-button{width:90%;min-height:65px;gap:12px;padding:11px 16px;font-size:28px}.open-button>svg{width:27px;height:25px}.button-arrow{font-size:31px;margin-left:0}.open-button:disabled{font-size:24px}.invitation-whisper{font-size:12px;letter-spacing:.3px;margin-top:16px}footer{margin-top:29px}footer p{font-size:23px;margin-top:10px}footer>span{font-size:8px}.candle--right{right:-24px;bottom:6%;transform:scale(.8);opacity:.8}.candle--left{top:55%;left:-40px;transform:scale(.75);opacity:.55}.flower-branch--right{right:-154px;top:24%;transform:scale(.85) rotate(-18deg);opacity:.65}.flower-branch--left{left:-155px;bottom:-75px;transform:rotate(23deg);opacity:.7}.petal--one{width:16px;height:27px;left:1%;bottom:20%}.petal--two{width:16px;height:25px;right:0;top:65%}.sparkle{font-size:19px}.little-letter{padding:10px 12px}.little-letter>.flourish{height:22px}.little-letter>span{margin:5px 0 0;font-size:32px}.little-letter>p{font-size:12px}.little-letter>svg{width:18px;margin-top:7px}.letter-view{padding-top:104px;margin-top:15px;width:calc(100% - 5px)}.bear-pair--compact{height:140px;left:2%;right:2%}.bear-pair--compact .bear{width:43%;top:0}.bear-pair--compact .bear--dudu{left:6%}.bear-pair--compact .bear--bubu{right:4%;top:3%}.bear-pair--compact .bear-name{font-size:20px}.bear-pair--compact .bear-name--dudu{left:-2%;top:-3%}.bear-pair--compact .bear-name--bubu{right:-4%;top:-5%}.bear-pair--compact .bear-name>span{font-size:23px}.bear-pair--compact .bear-hearts{top:-3%;width:10%}.letter-paper{border-radius:28px 28px 10px 10px;padding:18px 20px 76px;box-shadow:0 0 0 3px #f7ddbd,0 0 0 4px #d6a369,0 10px 28px #9c615529,inset 0 0 35px #e9c39955}.letter-paper:before{inset:6px;border-radius:23px 23px 7px 7px}.letter-top-ornament{width:96%;margin-bottom:6px}.letter-top-ornament>svg{width:40px;height:33px}.letter-top-ornament .flourish{gap:9px}.letter-top-ornament .flourish>span{width:28px}.letter-top-ornament .flourish>svg{width:23px;height:23px}.letter-paper h2{font-size:37px;line-height:1.2;margin:8px -12px 19px}.letter-copy{font-size:19px;line-height:1.48}.letter-copy p{margin-bottom:16px}.letter-copy .salutation{margin-bottom:15px}.letter-copy .letter-closing{font-size:34px;margin-top:20px;gap:8px}.letter-closing svg{width:25px;height:25px}.letter-copy .signature{font-size:16px}.small-divider{margin:22px 0;gap:13px}.memories-heading{gap:7px;padding:7px 9px;width:100%;border-radius:10px 4px}.memories-heading h3{font-size:21px;white-space:nowrap}.memories-heading>svg:first-child{width:20px;height:20px}.memories-heading>svg:last-child{width:15px;height:15px}.memories-subtitle{font-size:13px;margin:10px -4px 23px}.polaroid-grid{gap:24px 13px;padding:0}.polaroid{padding:6px 6px 0}.washi-tape{width:40px;height:15px;left:calc(50% - 20px);top:-7px}.photo-placeholder{gap:8px;padding:8px}.photo-placeholder:before{inset:5px}.photo-placeholder>svg:first-child{width:22px;height:21px}.photo-placeholder>span{font-size:12px}.photo-placeholder>svg:last-child{display:none}.polaroid figcaption{font-size:13px;padding:7px 0 8px;min-height:44px;display:flex;align-items:center;justify-content:center;gap:3px;flex-wrap:wrap;align-content:center}.polaroid figcaption span{font-size:14px}.paper-flowers{width:66px;height:90px}.paper-flowers>svg:first-child{width:65px;top:21px}.paper-flowers>svg:nth-child(2){width:48px;left:6px;top:6px}.paper-flowers>svg:nth-child(3){width:35px;top:42px;left:0}.paper-flowers--left{left:-23px;bottom:250px}.paper-flowers--right{right:-23px;bottom:126px}.letter-postscript{font-size:14px;margin:25px 5px 5px;line-height:1.4}.letter-envelope-bottom{height:114px;margin-top:-58px}.letter-envelope-bottom>.ribbon{top:5%;left:5%;width:90%}.letter-envelope-bottom>div:before{transform:rotate(20deg)}.letter-envelope-bottom>div:after{transform:rotate(-20deg)}.replay-button{margin-top:26px;font-size:16px}.is-open footer{margin-top:22px}}@media(max-width:374px){.page-content{padding-left:18px;padding-right:18px}.title-row h1{font-size:58px}.title-row{gap:8px}.date-row{gap:7px}.date-row>svg{width:35px}.anniversary{font-size:24px}.bear-name{font-size:20px}.letter-paper{padding-left:16px;padding-right:16px}.letter-paper h2{font-size:33px}.memories-heading h3{font-size:18px}.memories-heading{gap:5px}.letter-view{padding-top:94px}.photo-placeholder>span{font-size:11px}.polaroid figcaption{font-size:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.bear-hearts svg:first-child{transform:none}.letter-view{opacity:1;transform:none}}: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);-webkit-text-size-adjust:100%}.anniversary-page{min-height:100svh;min-height:100dvh;overflow-x:clip;overflow-y:visible;overflow-anchor:none}.page-content{padding-top:max(38px,var(--safe-top));padding-right:max(24px,var(--safe-right));padding-bottom:max(28px,var(--safe-bottom));padding-left:max(24px,var(--safe-left))}.experience{position:relative;display:grid}.invitation,.letter-panel{grid-area:1 / 1;min-width:0}.letter-panel{position:relative}.letter-view{display:flow-root}.is-opening .envelope-stage{will-change:transform}.envelope{perspective:900px;transform-style:flat}.envelope-flap{backface-visibility:visible}.bear,.bear-paw{transform-box:view-box}.bear-paw--left{transform-origin:61px 202px}.bear-paw--right{transform-origin:178px 195px}.bear-arm{opacity:0;transform:scaleY(0);transform-box:view-box}.bear-arm--left{transform-origin:61px 201px}.bear-arm--right{transform-origin:178px 195px}.ribbon-tail,.ribbon-band{transform-box:fill-box;transform-origin:center}.ribbon-band--left{transform-origin:left center}.ribbon-band--right{transform-origin:right center}.photo-area>img{object-fit:contain}.polaroid figcaption,.letter-copy{overflow-wrap:anywhere}.is-opening .envelope-stage{animation:opening-clock var(--opening-duration) linear both,reveal-signal var(--reveal-duration) var(--reveal-at) linear both}.is-opening .invitation .bear--dudu{animation:dudu-story var(--opening-duration) ease-in-out both}.is-opening .invitation .bear--bubu{animation:bubu-story var(--opening-duration) ease-in-out both}.is-opening .bear-name{opacity:0;transition:opacity .4s}.is-opening .bear--dudu .bear-paw--right{--paw-x: 35px;--paw-angle: -12deg;animation:paw-reach 4.3s var(--reach-at) ease-in-out both}.is-opening .bear--bubu .bear-paw--left{--paw-x: -35px;--paw-angle: 12deg;animation:paw-reach 4.3s var(--reach-at) ease-in-out both}.is-opening .bear-arm{animation:arm-reach 3s var(--reach-at) ease-in-out both}.is-opening .envelope .wax-seal{animation:seal-release .7s var(--untie-at) ease-in-out both}.is-opening .envelope .ribbon-loop--left,.is-opening .envelope .ribbon-tail--left{--ribbon-x: -48px;--ribbon-angle: -14deg;animation:ribbon-release 1s var(--untie-at) ease-in-out both}.is-opening .envelope .ribbon-loop--right,.is-opening .envelope .ribbon-tail--right{--ribbon-x: 48px;--ribbon-angle: 14deg;animation:ribbon-release 1s var(--untie-at) ease-in-out both}.is-opening .envelope .ribbon-band{animation:ribbon-slacken 1s var(--untie-at) ease-in-out both}.is-opening .envelope .ribbon-highlights{animation:ribbon-fade .25s var(--untie-at) linear both}.is-opening .envelope .ribbon{animation:ribbon-fade .35s calc(var(--untie-at) + .65s) ease-in both}.is-opening .burst-heart{animation:burst 2.2s calc(var(--untie-at) + var(--delay)) ease-out both}.is-opening .envelope-flap{animation:open-flap 1s var(--flap-at) ease-in-out both}.is-opening .little-letter{animation:letter-rise 1.3s var(--lift-at) cubic-bezier(.25,.6,.25,1) both}.is-opening .bear--dudu .bear-paw--left,.is-opening .bear--bubu .bear-paw--right{animation:helping-paw 1.3s var(--lift-at) ease-in-out both}.is-opening .stage-glow{animation:glow 3.5s var(--untie-at) ease-in-out both}.is-opening .invitation-note{opacity:0;transition:opacity .3s}.is-revealing .invitation{pointer-events:none}.is-revealing .invitation .bear-pair{opacity:0;transition:opacity .35s}.is-revealing .envelope,.is-revealing .invitation-action,.is-revealing .heart-burst{opacity:0;transition:opacity .45s}.is-revealing .letter-panel{z-index:8}.is-revealing .letter-copy,.is-revealing .letter-paper h2,.is-revealing .memories,.is-revealing .letter-envelope-bottom,.is-revealing .replay-button,.is-revealing .letter-panel .bear-name{animation:reveal-content var(--reveal-duration) ease-out both}@keyframes opening-clock{0%{opacity:1}to{opacity:1}}@keyframes reveal-signal{0%{outline-color:transparent}to{outline-color:transparent}}@keyframes dudu-story{0%{transform:translate(0) rotate(-6deg)}16.667%{transform:translate(11%,2%) rotate(-2deg)}33.333%,50%{transform:translate(9%,9%) rotate(6deg)}66.667%{transform:translateY(-2%) rotate(-8deg)}88.333%,to{transform:translate(-1%,-7%) rotate(-6deg)}}@keyframes bubu-story{0%{transform:translate(0) rotate(6deg)}16.667%{transform:translate(-11%,2%) rotate(2deg)}33.333%,50%{transform:translate(-9%,9%) rotate(-6deg)}66.667%{transform:translateY(-2%) rotate(8deg)}88.333%,to{transform:translate(1%,-7%) rotate(6deg)}}@keyframes paw-reach{0%{transform:translate(0) rotate(0)}23.256%,46.512%{transform:translate(var(--paw-x),125px) rotate(var(--paw-angle))}69.767%{transform:translate(0) rotate(0)}to{transform:translateY(-34px) rotate(var(--paw-angle))}}@keyframes arm-reach{0%{opacity:0;transform:scaleY(0)}10%{opacity:1}33.333%,66.667%{opacity:1;transform:scaleY(1)}to{opacity:0;transform:scaleY(0)}}@keyframes helping-paw{0%{transform:translateY(0) rotate(0)}to{transform:translateY(-26px) rotate(-10deg)}}@keyframes seal-release{0%{opacity:1;transform:scale(1)}45%{opacity:1;transform:scale(1.12) rotate(-9deg)}to{opacity:0;transform:translateY(12px) scale(.85) rotate(12deg)}}@keyframes ribbon-release{0%{transform:translate(0) rotate(0)}to{transform:translate(var(--ribbon-x)) rotate(var(--ribbon-angle))}}@keyframes ribbon-slacken{0%{transform:scaleX(1)}to{transform:scaleX(.75)}}@keyframes ribbon-fade{0%{opacity:1}to{opacity:0}}@keyframes open-flap{0%{transform:rotateX(0);z-index:5}49%{z-index:5}50%{z-index:0}to{transform:rotateX(178deg);z-index:0}}@keyframes letter-rise{0%{opacity:0;transform:translateY(0) scale(1)}12%{opacity:1}to{opacity:1;transform:translateY(-50%) scale(1.06)}}@keyframes burst{0%{opacity:0;transform:translate(0) scale(.3)}20%{opacity:.9}80%{opacity:.65}to{opacity:0;transform:translate(var(--x),var(--y)) scale(1) rotate(var(--r))}}@keyframes glow{0%,to{opacity:.45}50%{opacity:.85}}@keyframes reveal-content{0%,30%{opacity:0}to{opacity:1}}@media(max-width:600px){.page-content{padding-top:max(28px,var(--safe-top));padding-right:max(22px,var(--safe-right));padding-bottom:max(23px,var(--safe-bottom));padding-left:max(22px,var(--safe-left))}.envelope-stage{width:min(100%,max(240px,calc((100svh - var(--safe-top) - var(--safe-bottom) - 360px) * 1.05)));margin-top:22px}.open-button{min-height:65px;touch-action:manipulation}.replay-button{min-height:46px;touch-action:manipulation}.heart-burst{transform:scale(.72);transform-origin:50% 56%}.letter-copy{font-size:19px;line-height:1.52}.letter-copy p{margin-bottom:18px}.letter-paper h2{font-size:clamp(33px,9.8vw,40px)}.polaroid figcaption{line-height:1.3}}@media(prefers-reduced-motion:reduce){.is-opening .envelope-stage{animation:none}.is-reduced.is-opening .envelope-stage{opacity:.65;transition:opacity .22s!important}.is-reduced .letter-panel{opacity:1}}
