@import"https://fonts.googleapis.com/css2?family=Caveat:wght@400;500;600&family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap";:root{font-family:DM Sans,sans-serif;color:#594149;background:#fffaf5;font-synthesis:none;font-weight:400;--rose:#ad4966;--ink:#543b43;--muted:#866e76;--pink:#f8e5e9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:40px}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #a24e81;outline-offset:6px}button{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Playfair Display,Georgia,serif;font-weight:400;letter-spacing:-2.5px;color:var(--ink)}h2{font-size:clamp(36px,4vw,53px);line-height:1.2;margin-bottom:22px}h1 em,h2 em{color:var(--rose);font-weight:400}p{line-height:1.85;color:#7b626b;font-size:15px}.world{overflow:hidden;position:relative}.handwritten{font-family:Caveat,cursive;font-size:25px;color:var(--rose)}.eyebrow{font-size:10px;letter-spacing:2.3px;font-weight:600;color:#9d6577;display:inline-flex;align-items:center;gap:9px}.eyebrow>span{width:6px;height:6px;border-radius:50%;background:#d99aae}header{height:98px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2;border-bottom:1px solid #eddfd94d}.brand{display:flex;gap:10px;align-items:center;font-size:14px;color:#a4546c}.brand>span{font-size:25px;margin-left:4px}nav{display:flex;gap:31px;align-items:center;font-size:11px;color:#795863}nav a:hover{color:#af4868}.nav-letter{background:none;border:1px solid #e6cad2;border-radius:30px;padding:11px 18px;display:flex;gap:9px;align-items:center}.hero{max-width:1320px;margin:auto;min-height:690px;position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:55px 6% 90px;gap:10px}.hero h1{font-size:clamp(55px,5.7vw,79px);line-height:1.12;margin:25px 0 23px;position:relative;letter-spacing:-3.8px}.title-star{position:absolute;font-size:55px;color:#bd9959;top:55px;right:10px;font-family:serif;animation:twinkle 4s infinite}.hero-sub{font-size:15px;line-height:1.9;margin-bottom:29px}.hero-sub strong{color:#ad4966;font-weight:500}.primary{border:0;display:inline-flex;align-items:center;justify-content:center;gap:20px;background:#ae506c;color:#fff;border-radius:30px;padding:17px 26px;font-size:12px;box-shadow:0 6px 16px #ae506c16;transition:background .2s,transform .2s}.primary:hover{background:#963d58;transform:translateY(-2px)}.hero-foot{font-size:21px;display:flex;align-items:center;gap:9px;margin-top:23px;transform:rotate(-3deg)}.hero-art{position:relative;min-width:0}.hero-art img{width:118%;max-width:none;margin-left:-9%;position:relative;mix-blend-mode:multiply;filter:saturate(.86);border-radius:50%;-webkit-mask-image:radial-gradient(ellipse,black 50%,transparent 72%);mask-image:radial-gradient(ellipse,black 50%,transparent 72%)}.art-orbit{position:absolute;border:1px dashed #e4bbc5;border-radius:50%;top:8%;right:0;bottom:8%;left:0;transform:rotate(-18deg)}.orbit-two{top:1%;right:8%;bottom:1%;left:8%;transform:rotate(25deg);border-color:#e9d6ab}.art-label{position:absolute;background:#fffdf8e8;box-shadow:0 5px 25px #7e405b0a;border:1px solid #efdfd6;border-radius:20px;display:flex;align-items:center;gap:8px;font-size:10px;padding:11px 17px;color:#a16179;white-space:nowrap}.label-top{right:0;top:8%;transform:rotate(7deg)}.label-bottom{left:11%;bottom:2%;transform:rotate(-5deg)}.floating-butterfly{position:absolute;top:12%;left:3%;font-size:32px;animation:float 5s ease-in-out infinite}.art-sparkle{position:absolute;right:1%;bottom:20%;font-size:48px;color:#c4a670;animation:twinkle 5s infinite}.scroll-hint{position:absolute;bottom:25px;left:6%;font-size:8px;letter-spacing:2px;display:flex;align-items:center;gap:15px;color:#a5858e}.scroll-hint svg{animation:nudge 2s infinite}.ribbon{height:61px;border-top:1px solid #eed5dc;border-bottom:1px solid #eed5dc;background:#f8eceb;display:flex;justify-content:space-around;gap:30px;align-items:center;white-space:nowrap;color:#c38494;font-size:18px}.ribbon span{font-family:Caveat,cursive;font-size:24px;color:#9c6978}.section{padding:100px 6%;max-width:1320px;margin:auto}.section-heading{text-align:center}.section-heading .eyebrow{margin-bottom:20px}.section-heading p{font-size:14px}.notes-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:23px;margin:56px 0 30px}.note-card{text-align:left;border:1px solid #e8d2d4;padding:28px 23px 20px;position:relative;border-radius:3px;box-shadow:4px 7px #79526705;min-height:320px;transform:rotate(-2deg)}.note-card:nth-child(2){transform:rotate(2deg)}.note-card:nth-child(3){transform:rotate(-1deg)}.note-card:nth-child(4){transform:rotate(3deg)}.pink{background:#f9e7eb}.lavender{background:#eeebf7}.yellow{background:#fbf1d9}.sage{background:#edf0e4}.tape{position:absolute;top:-12px;left:calc(50% - 30px);width:60px;height:25px;background:#fffaf2a6;transform:rotate(-5deg);border-left:1px dashed #e1d7c9;border-right:1px dashed #e1d7c9}.note-number{font-size:8px;letter-spacing:1.6px;color:#92737f}.note-illustration{display:block;font-size:63px;text-align:center;margin:26px 0 22px;filter:saturate(.65);animation:float 6s ease-in-out infinite}.note-card:nth-child(2) .note-illustration{animation-delay:-2s}.note-card h3{font-family:Playfair Display,serif;font-size:21px;font-weight:400;letter-spacing:-.5px;margin-bottom:10px}.note-card p{font-size:11px;line-height:1.8;min-height:40px;margin-bottom:24px}.note-bottom{border-top:1px solid #8d61771a;padding-top:14px;display:flex;justify-content:space-between;font-size:10px;color:#8b6677}.note-bottom>span{font-size:15px}.notes-foot{text-align:center;font-size:23px;transform:rotate(-2deg);margin-bottom:0}.science-section{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;padding-top:40px;padding-bottom:90px}.science-art{position:relative;min-height:360px;background:radial-gradient(ellipse,#f1e9f8,transparent 70%);display:grid;place-items:center}.atom{width:230px;height:230px;position:relative;display:grid;place-items:center;animation:spin 35s linear infinite}.atom>span{position:absolute;width:100%;height:40%;border:2px solid #b29ac2;border-radius:50%;transform:rotate(0)}.atom>span:nth-child(2){transform:rotate(60deg)}.atom>span:nth-child(3){transform:rotate(120deg)}.atom>span:after{content:"";position:absolute;left:12%;top:6%;width:16px;height:16px;border-radius:50%;background:#cc83a3;box-shadow:0 0 20px #dfa9ca}.atom b{font-size:80px;font-weight:400;color:#b9678e;animation:spin 35s linear infinite reverse}.science-flower{position:absolute;right:9%;top:6%;font-size:66px;color:#d8b4c6;animation:spin 35s linear infinite}.science-chip{position:absolute;background:#fffdf6;border:1px solid #e6d9e9;border-radius:4px;font-family:Caveat,cursive;padding:10px 20px;font-size:22px;color:#8e698e}.chip-a{left:0;top:17%;transform:rotate(-10deg)}.chip-b{bottom:7%;right:1%;transform:rotate(6deg)}.science-copy .eyebrow{margin-bottom:20px}.science-copy p{font-size:14px}.mini-note{display:flex;align-items:center;gap:12px;color:#a1697f;font-size:12px;margin-top:25px}.mini-note svg{flex-shrink:0}.comfort{text-align:center;max-width:none;background:#f6eceb;position:relative;border-top:1px solid #eddfd8;border-bottom:1px solid #eddfd8;padding:80px 20px}.comfort .eyebrow{margin-bottom:24px}.comfort-illustration{display:flex;justify-content:center;align-items:center;gap:0;margin:25px 0 15px;position:relative}.comfort-illustration>span:nth-of-type(2),.comfort-illustration>span:nth-of-type(3){font-size:85px;filter:saturate(.5);animation:sway 5s ease-in-out infinite}.comfort-illustration>span:nth-of-type(3){transform:scaleX(-1);animation:none;margin-left:-9px}.comfort-illustration>span:first-child,.comfort-illustration>span:last-child{font-size:65px;color:#fffaf5;margin:0 30px;animation:float 6s ease-in-out infinite}.hug-heart{position:absolute;width:26px;color:#ba6a85;top:10px;left:calc(50% - 13px);animation:pulse 2s infinite}.comfort-small{font-size:13px;margin-top:20px}.comfort .handwritten{display:block;margin-top:25px}.wish-section{padding-bottom:65px}.cake-scene{position:relative;max-width:440px;height:315px;margin:20px auto 5px;background:radial-gradient(ellipse at 50% 70%,#fae8e9,transparent 68%)}.cake{position:absolute;width:250px;left:calc(50% - 125px);bottom:28px}.candles{display:flex;justify-content:center;gap:25px;height:53px;align-items:end;position:relative;z-index:3}.candle{height:43px;width:9px;background:repeating-linear-gradient(135deg,#c780a2 0,#c780a2 4px,#f8e4ed 4px,#f8e4ed 8px);position:relative;border-radius:2px}.candle:nth-child(2n){height:35px}.flame{position:absolute;top:-21px;left:0;width:9px;height:17px;border-radius:70% 30% 60% 40%;background:#e9ac53;box-shadow:0 0 18px #f4d080;animation:flicker 1s ease-in-out infinite alternate}.cake-top{height:53px;background:#fff4ec;border:2px solid #e6b3bd;border-radius:50%;position:relative;z-index:2;display:grid;place-items:center;margin-top:-13px}.cake-top>span{color:#b96683;font-size:24px}.cake-body{height:117px;background:linear-gradient(90deg,#e6a4b5,#f4c3cf 40%,#e7a6b7);border-radius:0 0 45% 45%/0 0 23% 23%;margin-top:-27px;padding-top:39px;position:relative;display:flex;flex-direction:column;align-items:center;box-shadow:inset -10px 0 20px #a6546e0b}.cake-body>span{font-family:Caveat,cursive;font-size:29px;color:#92536a}.cake-hearts{color:#fff2e8;font-size:25px;letter-spacing:7px}.icing{position:absolute;top:17px;left:2%;width:96%;height:27px;background:radial-gradient(ellipse at 50% 0,#fff4ec 60%,transparent 65%) 0 0/35px 29px repeat-x;z-index:3}.cake-plate{height:28px;background:#e5d9d9;border:5px solid #f0e8e1;border-radius:50%;width:300px;margin:-11px 0 0 -25px;position:relative;z-index:-1}.cake-star{position:absolute;color:#c4a36f;font-size:50px;animation:twinkle 3s infinite}.star-left{left:0;top:80px}.star-right{right:0;top:25px;font-size:30px}.cake-flower{position:absolute;bottom:10px;right:5%;font-size:60px;transform:rotate(17deg);filter:saturate(.5)}.wish-action{text-align:center}.wish-response{min-height:78px;padding-top:22px;font-size:12px;color:#93717d;line-height:1.9}.wish-response span{display:block}.wish-response strong{font-weight:500;color:#a14f6a}.letter-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;background:#f7f0e7;max-width:none;padding-left:max(6%,calc((100vw - 1160px)/2));padding-right:max(6%,calc((100vw - 1160px)/2))}.letter-intro .eyebrow{font-size:9px;margin-bottom:20px}.letter-intro p{font-size:14px}.envelope{display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #dfafbc;background:linear-gradient(150deg,#f2d4dc,#efd0d8);height:250px;position:relative;box-shadow:6px 12px 25px #8f4f6512;transform:rotate(3deg);border-radius:5px;margin-bottom:20px}.envelope-flap{position:absolute;top:0;left:0;right:0;height:125px;background:linear-gradient(170deg,#f9e3e9,#edc4d0);clip-path:polygon(0 0,100% 0,50% 100%);filter:drop-shadow(0 3px 1px #c68e9d)}.envelope-address{position:absolute;top:33px;left:25px;transform:rotate(-4deg);font-size:26px;z-index:1}.seal{z-index:2;background:#ad526c;border:4px double #cb8298;color:#f8dbe5;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;box-shadow:0 4px 7px #7a3d5525}.envelope-bottom{position:absolute;bottom:36px;letter-spacing:2px;font-size:8px;color:#a36c7d}.envelope-tag{position:absolute;bottom:-43px;display:flex;align-items:center;gap:10px;font-family:Caveat,cursive;font-size:22px;color:#a15f76}footer{padding:65px 20px 90px;text-align:center;color:#b76c83}footer>svg{margin-bottom:20px}footer p{font-family:Playfair Display,serif;font-size:22px;line-height:1.6;color:#6c4e58;margin-bottom:15px}footer .handwritten{display:block;margin-bottom:30px}footer small{font-size:8px;letter-spacing:2px;color:#a0808b}.controls{position:fixed;bottom:20px;right:22px;display:flex;gap:8px;z-index:5}.controls button{border:1px solid #ead5da;border-radius:25px;padding:12px;background:#fffaf4f0;box-shadow:0 3px 20px #79526708;display:flex;align-items:center;gap:8px;color:#a45b73;font-size:10px}.ambient{pointer-events:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;overflow:hidden}.ambient span{position:absolute;top:-30px;font-size:15px;color:#d6a1ae80;animation:drift 16s linear infinite}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#38242e66;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);z-index:20;padding:30px 20px;display:flex;align-items:center;justify-content:center}.modal{max-width:520px;width:100%;max-height:90dvh;overflow:auto;padding:55px 40px 40px;border:1px solid #e4c8cd;border-radius:9px;box-shadow:0 20px 90px #321c4033;position:relative;text-align:center}.modal h2{font-size:35px;letter-spacing:-1px}.modal p{font-size:15px}.modal .eyebrow{font-size:9px;margin-bottom:20px}.close{position:absolute;right:14px;top:14px;border:0;background:#fff9f4b0;display:grid;place-items:center;border-radius:50%;width:36px;height:36px}.modal-icon{display:block;font-size:70px;margin-bottom:20px}.letter-modal{max-width:680px;text-align:left;background:#fffaf1;padding:55px 50px 40px;background-image:repeating-linear-gradient(transparent 0px,transparent 31px,#dac7ad15 31px,#dac7ad15 32px)}.letter-modal h2{font-size:42px}.letter-modal p{font-size:14px;line-height:1.95}.signature{display:block;margin-top:25px}.letter-heart{display:block;margin:25px auto 0;width:18px;color:#bd6c88}.skip{position:fixed;top:-70px;left:15px;z-index:50;background:#fff;padding:15px}.skip:focus{top:15px}.paused *,.paused *:before,.paused *:after{animation-play-state:paused!important}.paused{scroll-behavior:auto}@keyframes float{0%,to{translate:0 0}50%{translate:0 -10px}}@keyframes twinkle{0%,to{opacity:.45;scale:.9}50%{opacity:1;scale:1.08}}@keyframes nudge{0%,to{translate:0 0}50%{translate:0 5px}}@keyframes drift{0%{translate:0 -5vh;rotate:0deg;opacity:0}10%{opacity:.6}90%{opacity:.6}to{translate:50px 110vh;rotate:120deg;opacity:0}}@keyframes spin{to{rotate:360deg}}@keyframes flicker{to{scale:.85 1.1;rotate:8deg}}@keyframes pulse{50%{scale:1.15}}@keyframes sway{50%{rotate:-5deg}}@media(min-width:1500px){.hero{min-height:760px}}@media(max-width:1000px){.notes-grid{grid-template-columns:repeat(2,1fr);gap:28px}.note-card{min-height:300px}.hero h1{font-size:59px}.science-section{gap:30px}.title-star{right:-10px;font-size:35px}.hero{min-height:640px}.hero-art img{width:130%;margin-left:-15%}.label-top{right:-15px}.art-label{font-size:9px}.section{padding-top:75px;padding-bottom:75px}.letter-section{gap:35px}}@media(max-width:650px){header{height:75px;padding:0 6%}.brand{font-size:11px;gap:7px}.brand>span{display:none}nav{gap:0}nav>a{display:none}.nav-letter{font-size:10px;padding:9px 12px}.hero{grid-template-columns:1fr;padding:38px 7% 65px;text-align:center;gap:10px}.hero .eyebrow{font-size:8px;letter-spacing:1.7px}.hero h1{font-size:58px;letter-spacing:-3px;margin-top:23px;margin-bottom:20px}.title-star{right:8%;top:25px}.hero-sub{font-size:13px}.primary{font-size:11px;padding:16px 24px}.hero-foot{justify-content:center;font-size:21px;margin-top:18px}.hero-art{max-width:370px;width:100%;margin:12px auto 15px}.hero-art img{width:115%;margin-left:-7.5%;display:block}.art-label{font-size:8px;padding:9px 12px}.label-top{right:-3px;top:9%}.label-bottom{bottom:-4%;left:16%}.floating-butterfly{font-size:25px}.art-sparkle{font-size:35px}.scroll-hint{left:0;right:0;justify-content:center;bottom:19px;font-size:7px}.ribbon{height:52px;justify-content:flex-start;width:160%;gap:25px;padding-left:20px}.ribbon span{font-size:21px}.section{padding:65px 7%}h2{font-size:37px;letter-spacing:-1.5px}.section-heading .eyebrow{font-size:8px;letter-spacing:1.7px}.section-heading p{font-size:12px}.notes-grid{gap:23px 13px;margin-top:40px}.note-card{padding:21px 14px 16px;min-height:290px}.note-number{font-size:6px;letter-spacing:1px}.note-illustration{font-size:48px;margin:24px 0 17px}.note-card h3{font-size:20px;line-height:1.3;min-height:52px}.note-card p{font-size:10px;min-height:38px}.note-bottom{font-size:8px}.notes-foot{font-size:22px;margin-top:25px}.science-section{grid-template-columns:1fr;gap:20px;padding-top:0}.science-art{min-height:300px;max-width:350px;width:100%;margin:auto}.atom{width:200px;height:200px}.science-flower{font-size:55px}.science-chip{font-size:19px}.science-copy{text-align:center}.science-copy .eyebrow{font-size:8px}.science-copy p{font-size:13px}.mini-note{font-size:11px;justify-content:center}.comfort{padding-top:60px;padding-bottom:60px}.comfort .eyebrow{font-size:8px}.comfort h2{font-size:33px}.comfort p{font-size:13px}.comfort-small{font-size:12px!important}.comfort-illustration>span:nth-of-type(2),.comfort-illustration>span:nth-of-type(3){font-size:72px}.comfort-illustration>span:first-child,.comfort-illustration>span:last-child{font-size:40px;margin:0 15px}.cake-scene{height:290px}.cake-star{font-size:35px}.cake-flower{right:0;font-size:45px}.star-left{left:0}.star-right{right:10px}.wish-response{font-size:11px}.letter-section{grid-template-columns:1fr;gap:30px;text-align:center;padding-bottom:100px}.letter-intro .eyebrow{font-size:7px;letter-spacing:1.4px}.letter-intro p{font-size:13px}.envelope{height:220px;width:100%;max-width:350px;margin:0 auto}.envelope-address{font-size:23px;left:20px}.envelope-bottom{font-size:7px}.envelope-tag{bottom:-40px}footer{padding-top:50px}footer p{font-size:21px}.controls{bottom:12px;right:12px}.controls button{padding:10px}.controls span{font-size:9px}.modal{padding:50px 25px 30px}.modal h2{font-size:30px}.modal p{font-size:14px}.letter-modal{padding:55px 25px 30px}.letter-modal h2{font-size:34px}.letter-modal p{font-size:13px}.desktop-break{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}.gift-section{text-align:center;padding-bottom:35px}.gift-section .eyebrow{margin-bottom:20px}.gift-section>div>p{font-size:13px}.gift-surprise{display:flex;align-items:center;flex-direction:column;justify-content:center;border:0;background:radial-gradient(ellipse,#fae6ed,transparent 70%);width:300px;min-height:250px;margin:15px auto 0;position:relative}.gift-icon{position:relative;color:#b76888;display:block;height:140px;padding-top:15px}.gift-heart{position:absolute;left:38px;top:75px;font-size:25px}.gift-surprise .handwritten{font-size:25px}.gift-instruction{font-size:8px;letter-spacing:2px;margin-top:12px;color:#95717f}.bouquet{font-size:110px;display:block;height:140px;filter:saturate(.7)}.gift-message{min-height:44px;color:#986779;font-size:12px!important;margin-top:15px}.gift-section+footer{padding-top:35px}.cake-plate{z-index:0}.cake-body{z-index:1}.cake{isolation:isolate}@media(max-width:650px){.controls button{min-width:40px;min-height:40px;justify-content:center}.controls span{display:none}.controls{right:10px;bottom:10px}.gift-section .eyebrow{font-size:8px}.gift-surprise{width:270px}}.close{position:sticky;top:0;float:right;margin:-35px -20px 0 0;z-index:2;right:auto;background:#fffaf4;box-shadow:0 2px 10px #7952670b}.note-illustration{width:90px;height:90px;border-radius:50%;background:#fffcf680;border:1px solid #ffffffb0;display:grid;place-items:center;margin:22px auto;position:relative;color:#a25a78;filter:none}.note-illustration svg{width:51px;height:51px;filter:drop-shadow(0 4px 0 #ffffff80)}.lavender .note-illustration{color:#8a6aa1}.yellow .note-illustration{color:#a88344}.sage .note-illustration{color:#72866d}.sticker-sparkle{position:absolute;right:1px;top:1px;font-size:25px;color:#b89860}.modal-icon{color:#a86682;display:grid;place-items:center}.envelope{perspective:900px;isolation:isolate}.envelope-flap{transform-origin:top;z-index:3;backface-visibility:visible}.envelope-peek{position:absolute;left:8%;right:8%;top:20px;height:180px;background:#fffaf1;border:1px solid #ead9cb;border-radius:3px;display:flex;flex-direction:column;align-items:center;gap:20px;padding:20px;z-index:1;color:#b9718a;box-shadow:0 -4px 20px #79526708}.envelope-peek .handwritten{font-size:23px}.envelope-front{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(150deg,#f2d4dc,#efd0d8);clip-path:polygon(0 0,50% 49%,100% 0,100% 100%,0 100%);z-index:2}.envelope-address,.envelope-bottom,.seal{z-index:4}.envelope.opening .envelope-address{opacity:0;transition:opacity .2s}.envelope-tag{z-index:5}.gift-surprise.unwrapped{cursor:default}.bouquet{position:relative;width:180px;height:170px;filter:none}.bouquet-wrap{position:absolute;left:35px;top:60px;width:110px;height:105px;background:linear-gradient(110deg,#d1b8c8,#f1d5df);clip-path:polygon(0 0,100% 0,65% 100%,40% 100%);rotate:-7deg}.bouquet-flower{position:absolute;color:#b87590;filter:drop-shadow(0 2px 0 #fff9f1)}.bouquet-flower svg{fill:#f3d1db}.flower-0{left:20px;top:20px;rotate:-25deg}.flower-1{left:65px;top:0;color:#ae8fbb}.flower-1 svg{fill:#e9deee}.flower-2{left:107px;top:25px;rotate:20deg}.flower-3{left:47px;top:45px;color:#bf9c5b}.flower-3 svg{fill:#f5e6b9}.flower-4{left:88px;top:55px;color:#829577}.flower-4 svg{fill:#dce6d4}.bouquet-bow{position:absolute;left:60px;top:115px;font-size:42px;line-height:1;color:#a45575}.modal-icon svg{margin-bottom:5px}@media(max-width:650px){.note-card p{font-size:12px;line-height:1.7;min-height:62px}.note-bottom{font-size:10px}.note-number{font-size:8px;letter-spacing:.8px}.note-card{padding-left:15px;padding-right:15px;min-height:340px}.note-card h3{font-size:20px}.note-illustration{width:75px;height:75px;margin:20px auto}.note-illustration svg{width:44px;height:44px}.gift-message{max-width:340px;margin:20px auto 0}.bouquet{height:170px}}@media(max-width:370px){.notes-grid{grid-template-columns:1fr;gap:30px;max-width:280px;margin-left:auto;margin-right:auto}.note-card{min-height:300px;padding:24px}.note-card h3{min-height:0;font-size:24px}.note-card p{min-height:0;font-size:13px}.note-bottom{font-size:11px}.note-number{font-size:9px}}.charm-section{padding-top:75px;padding-bottom:45px;position:relative;background:radial-gradient(ellipse at 50% 55%,#f8eaf1 0,transparent 65%)}.charm-section .section-heading p{font-size:13px}.charm-stage{position:relative;width:min(100%,740px);height:420px;margin:-5px auto 0}.charm-stage>div:not(.clay-fallback){position:relative;z-index:1}.charm-stage canvas{display:block;touch-action:pan-y!important}.charm-doodle{position:absolute;font-family:Caveat,cursive;color:#d2a7bd;font-size:65px;z-index:0;animation:float 6s ease-in-out infinite}.doodle-left{left:3%;top:29%;rotate:-15deg}.doodle-right{right:3%;top:12%;color:#ccb07e;font-size:75px;animation-delay:-2s}.charm-sticker{position:absolute;bottom:18px;left:50%;translate:-50% 0;rotate:-4deg;font-family:Caveat,cursive;font-size:21px;background:#fffaf2;border:1px solid #ead5de;box-shadow:0 5px 15px #79526708;border-radius:5px;padding:7px 17px;color:#a36480;display:flex;align-items:center;gap:8px;white-space:nowrap;z-index:2}.charm-action{text-align:center;margin-top:15px}.charm-button{display:inline-flex;gap:12px;align-items:center;padding:14px 24px;border:1px solid #dcb4c5;background:#fffaf5;border-radius:30px;font-size:12px;color:#a15475;box-shadow:0 5px #ead2dd50;transition:transform .2s,box-shadow .2s}.charm-button:hover{transform:translateY(-3px);box-shadow:0 8px #ead2dd50}.charm-button:active{transform:translateY(2px);box-shadow:none}.charm-action .handwritten{font-size:23px;margin-top:20px;min-height:34px}.clay-fallback{height:100%;width:100%;display:flex;justify-content:center;align-items:center;gap:25px;position:relative;isolation:isolate}.clay-fallback:after{content:"";position:absolute;width:75%;height:35px;background:#edd7e3;border-radius:50%;bottom:65px;filter:blur(7px);z-index:-1}.clay-bear{font-size:130px;filter:drop-shadow(4px 12px 7px #815a6a20)}.clay-heart{font-size:110px;color:#df8eb0;text-shadow:3px 4px 0 #c66b92,5px 8px 0 #bb668a,7px 16px 12px #ac648b25;rotate:-15deg;align-self:center;margin-top:-90px;animation:float 5s ease-in-out infinite}.clay-present{font-size:90px;rotate:8deg;filter:drop-shadow(3px 10px 6px #815a6a20);margin-top:70px}.clay-star{position:absolute;right:22%;top:50px;font-size:50px;color:#d5b576;animation:twinkle 4s infinite}.note-card{box-shadow:0 3px #ffffffa6,inset 0 1px #fff9,4px 10px 20px #79526708}.note-illustration{box-shadow:inset 0 2px 3px #fff,0 5px #b1819510,0 9px 16px #79526708}.controls button{min-width:42px;min-height:42px}.controls button:disabled{opacity:.6;cursor:default}@media(max-width:650px){.charm-section{padding-top:60px;padding-bottom:25px}.charm-section h2{font-size:35px}.charm-section .section-heading p{font-size:12px}.charm-stage{height:320px;width:calc(100% + 30px);margin-left:-15px;margin-top:-10px}.charm-sticker{font-size:18px;bottom:5px;padding:6px 13px}.charm-doodle{font-size:40px}.doodle-left{left:3%;top:28%}.doodle-right{right:0;top:12%;font-size:45px}.charm-action{margin-top:22px}.charm-action .handwritten{font-size:22px}.charm-button{font-size:12px;min-height:46px}.clay-fallback{gap:14px}.clay-bear{font-size:100px}.clay-heart,.clay-present{font-size:65px}.clay-star{top:30px;font-size:35px}.clay-fallback:after{bottom:40px}.hero-art{transform-style:preserve-3d}.art-label{box-shadow:0 4px #e9d7dd70,0 10px 18px #79526708}.notes-grid{gap:28px 15px}.controls{bottom:max(12px,env(safe-area-inset-bottom));right:max(12px,env(safe-area-inset-right))}}@media(prefers-reduced-motion:reduce){.charm-doodle,.clay-heart,.clay-star{animation:none}}@media(max-width:650px){.hero h1{font-size:clamp(43px,14.4vw,58px);letter-spacing:-2.6px}}.photo-scrapbook{padding-top:70px;padding-bottom:55px;background:radial-gradient(ellipse at 50% 60%,#f8e8eb,transparent 70%)}.photo-scrapbook .section-heading .eyebrow{gap:10px}.photo-scrapbook .section-heading p{font-size:13px}.scrapbook-rail{display:flex;justify-content:center;align-items:start;gap:20px;padding:40px 10px 45px;min-height:375px}.photo-print{position:relative;flex:0 1 205px;min-width:0;background:#fffcf5;border:1px solid #e5d7c9;border-radius:2px;padding:11px 11px 20px;box-shadow:1px 4px #e9ddd0,4px 12px 20px #61414d12;display:flex;flex-direction:column;align-items:center}.photo-print:nth-child(2n){margin-top:28px}.photo-print:nth-child(3){margin-top:8px}.photo-tape{position:absolute;width:63px;height:23px;background:#e6c7d8c4;top:-10px;left:calc(50% - 31px);rotate:-7deg;z-index:2;clip-path:polygon(2% 0,98% 2%,100% 98%,0 100%)}.print-image{width:100%;aspect-ratio:3/4;position:relative;overflow:hidden;background:#ecdfd7}.print-image>img{display:block;width:100%;height:100%;object-fit:cover}.print-expand{position:absolute;right:6px;bottom:6px;display:grid;place-items:center;padding:7px;background:#fffcf0de;border-radius:50%;color:#9b6577;opacity:0;transition:opacity .2s}.photo-print:hover .print-expand,.photo-print:focus-visible .print-expand{opacity:1}.print-caption{font-size:22px;line-height:1.25;display:block;margin:15px 0 7px;min-height:50px;align-content:center}.print-number{font-size:6px;letter-spacing:1.1px;color:#9b7b81}.print-doodle{position:absolute;bottom:-19px;right:2px;font-family:Caveat,cursive;font-size:43px;color:#b76a87;rotate:13deg}.scrapbook-hint{text-align:center;font-size:22px;margin-top:5px}.photo-universe{max-width:none;text-align:center;background:linear-gradient(160deg,#f1eaf4,#faf1f1 65%,#f6ebe6);border-top:1px solid #e5d8e7;border-bottom:1px solid #e5d8e7;padding-top:75px;padding-bottom:60px}.photo-universe .section-heading p{font-size:13px}.universe-stage{height:470px;width:min(100%,950px);margin:0 auto;position:relative;isolation:isolate}.universe-stage>div{z-index:1;position:relative}.universe-stage canvas{touch-action:pan-y!important}.universe-orbit{position:absolute;left:8%;right:8%;top:15%;bottom:10%;border:1px dashed #cbb1cd;border-radius:50%;transform:rotate(-15deg);opacity:.7;z-index:0}.universe-orbit.second{transform:rotate(15deg);border-color:#cfb68f;left:15%;right:15%;top:0;bottom:0}.universe-flat{height:90%;width:220px;background:#fff9ee;border:1px solid #e1cfcd;margin:10px auto 0;padding:12px 12px 20px;rotate:-4deg;box-shadow:0 15px 30px #63426518;display:flex;flex-direction:column}.universe-flat img{min-height:0;width:100%;height:100%;object-fit:contain;background:#f3e7e4}.universe-flat .handwritten{font-size:22px;white-space:nowrap;margin-top:14px}.universe-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:5px}.universe-controls>button,.lightbox-controls>button{width:43px;height:43px;border:1px solid #d4b7ce;background:#fffaf3b3;color:#976682;display:grid;place-items:center;border-radius:50%}.photo-dots{display:flex;gap:8px}.photo-dots>button{width:36px;height:36px;border:1px solid transparent;background:transparent;color:#987c95;font-size:10px;border-radius:50%;transition:background .2s}.photo-dots>button.selected{border-color:#bc8aa6;background:#fff9f0;color:#9e5578}.universe-caption{padding-top:22px;min-height:100px}.universe-caption>.handwritten{display:block;font-size:25px}.universe-caption>button{display:inline-flex;gap:8px;align-items:center;background:none;border:0;border-bottom:1px solid #cfb9c6;font-size:10px;margin-top:12px;padding:5px 0;color:#9b7089}.photo-modal{background:#fffaf1;max-width:650px;padding:45px 35px 25px}.photo-modal h2{font-family:Caveat,cursive;font-size:32px;letter-spacing:0;margin:5px 0 20px;color:#a45a7b}.lightbox-image{height:58dvh;max-height:650px;min-height:220px;display:flex;justify-content:center}.lightbox-image img{max-width:100%;height:100%;object-fit:contain;border:7px solid #fffdf7;box-shadow:0 4px 20px #67475515}.lightbox-controls{display:flex;justify-content:center;align-items:center;gap:30px;margin:17px 0 10px}.lightbox-controls>span{font-size:11px;letter-spacing:2px;color:#96758a}.photo-modal p{font-size:12px;margin-bottom:6px}.photo-modal .handwritten{font-size:22px}.cutie-booth{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px;padding-top:100px;padding-bottom:100px;max-width:1200px}.booth-copy>.eyebrow{margin-bottom:20px}.booth-copy p{font-size:14px}.booth-modes{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.booth-modes button{display:flex;align-items:center;gap:7px;font-size:10px;padding:11px 14px;border:1px solid #e1c9d3;background:#fff9f1;border-radius:25px;color:#9c637e;min-height:42px}.booth-modes .selected{background:#b16a87;border-color:#b16a87;color:#fff;box-shadow:0 4px 12px #9d547615}.booth-note.handwritten{font-size:25px;margin-top:22px;rotate:-3deg}.booth-frame{width:100%;max-width:340px;padding:13px;background:#fffdf6;border:1px solid #e3d4c4;position:relative;border-radius:100px 100px 5px 5px;box-shadow:5px 10px #efe1d6,12px 18px 40px #79526712;rotate:3deg;margin:auto}.booth-ribbon{position:absolute;top:-45px;left:calc(50% - 35px);font-size:65px;line-height:1;color:#bc7b9d;z-index:3;filter:drop-shadow(0 3px 0 #f8e2eb)}.booth-photo{width:100%;aspect-ratio:9/13;position:relative;display:block;border:0;background:#f1e2dc;overflow:hidden;padding:0;border-radius:90px 90px 0 0}.booth-photo>img{width:100%;height:100%;display:block;object-fit:cover;object-position:50% 35%}.booth-decorations{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;z-index:2}.booth-decorations>span{position:absolute;font-size:28px;color:#f6dfa0;filter:drop-shadow(0 2px 2px #6f465755);animation:booth-sparkle 4s ease-in-out infinite;animation-delay:calc(var(--i) * -.4s)}.booth-mode-1 .booth-decorations>span{color:#e7b0cf;font-size:35px;text-shadow:1px 1px 0 #fff3e5}.booth-mode-2 .booth-decorations>span{color:#f3b7c9}.booth-stamp{position:absolute;bottom:12px;left:0;right:0;font-size:7px;letter-spacing:2px;color:#fffaf0;text-shadow:0 1px 4px #4d233d;pointer-events:none}.booth-bottom{text-align:center;padding-top:12px}.booth-bottom>.handwritten{font-size:22px;line-height:1.4}.booth-thumbnails{display:flex;justify-content:center;gap:9px;padding:12px 0 3px}.booth-thumbnails button{border:2px solid transparent;border-radius:50%;padding:2px;background:transparent;width:36px;height:36px}.booth-thumbnails button.selected{border-color:#ba7897}.booth-thumbnails img{width:100%;height:100%;object-fit:cover;border-radius:50%}.booth-frame.still *{animation:none!important}.envelope-stage{padding-top:130px;padding-bottom:35px;position:relative;perspective:1100px;width:100%;max-width:430px;margin:auto}.keepsake-envelope{display:block;position:relative;isolation:isolate;width:100%;height:250px;border:0;background:none;border-radius:4px;padding:0;color:#b3738d}.env-back{position:absolute;top:0;right:0;bottom:0;left:0;background:#e7c0ce;border:1px solid #dba8bc;border-radius:4px;z-index:0;box-shadow:4px 13px 26px #82516a14}.env-lid{position:absolute;left:0;right:0;top:0;height:50%;background:linear-gradient(155deg,#fae4ea,#e5b7c9);clip-path:polygon(0 0,100% 0,50% 100%);transform-origin:50% 0%;backface-visibility:visible;transform-style:flat}.env-paper{position:absolute;z-index:1;top:18px;left:8%;right:8%;height:205px;background:#fffaf0;border:1px solid #e6d2bd;border-radius:3px;box-shadow:0 -2px 15px #7f52600b;display:flex;flex-direction:column;align-items:center;gap:12px;padding:23px 15px;color:#ba7894}.env-paper .handwritten{font-size:27px}.env-paper-lines{display:block;width:75%;height:45px;background:repeating-linear-gradient(transparent 0,transparent 12px,#dbc7b7 12px,#dbc7b7 13px);opacity:.6}.env-paper-kiss{font-family:Caveat,cursive;font-size:18px}.env-pocket{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(155deg,#f3d8e0,#ecc5d4);clip-path:polygon(0 0,50% 49%,100% 0,100% 100%,0 100%);border-radius:4px;z-index:2}.env-address{position:absolute;left:24px;top:28px;font-size:26px;rotate:-4deg;z-index:4}.env-seal{display:grid;place-items:center;position:absolute;left:calc(50% - 28px);top:calc(50% - 28px);width:56px;height:56px;background:#ad526c;color:#f9dbe5;border:4px double #cd8da2;border-radius:50%;box-shadow:0 3px 8px #7b395326;z-index:4}.env-bottom{position:absolute;z-index:4;bottom:35px;left:10px;right:10px;letter-spacing:2px;font-size:8px;color:#a36c7d}.env-open-label{position:absolute;bottom:-40px;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:9px;font-size:23px}.keepsake-envelope[data-phase=lifting] .env-lid{z-index:0}.keepsake-envelope[data-phase=lifting] .env-paper{z-index:1}.letter-section{gap:60px;padding-top:65px;padding-bottom:85px}.together-section{max-width:none;background:radial-gradient(ellipse at 50% 55%,#f2e5f1 0,#fcf3ef 60%,#fffaf5);text-align:center;padding-top:85px;padding-bottom:65px}.together-section .section-heading p{font-size:14px}.together-stage{position:relative;width:min(100%,740px);height:440px;margin:25px auto 0;isolation:isolate;perspective:1000px}.paired-portraits{height:100%;display:flex;align-items:center;justify-content:center;gap:30px;position:relative;z-index:1}.together-print{position:relative;background:#fffbf1;padding:13px 13px 18px;width:250px;box-shadow:0 3px #e9ddd0,6px 14px 30px #63415d1a;border:1px solid #e1cfbf;flex-shrink:0;transform-style:preserve-3d}.together-photo{height:280px;overflow:hidden;background:#eee2d9}.together-photo img{width:100%;height:100%;object-fit:cover}.together-print>.handwritten{display:block;font-size:28px;margin-top:10px}.together-print>small{font-size:7px;letter-spacing:1.3px;color:#a4818f}.together-tape{width:66px;height:25px;background:#dac4e0c2;position:absolute;left:calc(50% - 33px);top:-12px;rotate:-8deg}.her-print .together-tape{background:#e6c5ccbf;rotate:7deg}.together-heart{position:absolute;left:calc(50% - 30px);top:44%;z-index:3;border-radius:50%;width:60px;height:60px;border:5px solid #fff8ed;background:#b76e91;box-shadow:0 5px 20px #8948662b;color:#ffe8ee;display:grid;place-items:center;transition:scale .3s,background .3s}.together-heart:hover{scale:1.12}.heart-joined{background:#a95b81;animation:pulse 2.5s ease-in-out infinite}.together-orbit{position:absolute;top:-15px;right:0;bottom:0;left:0;border:1px dashed #d6b8c9;border-radius:50%;rotate:-13deg}.together-ending>.handwritten{font-size:28px;margin:30px 0 18px}.pair-switch{display:inline-flex;align-items:center;gap:10px;border:1px solid #dcc0cf;border-radius:25px;padding:12px 20px;background:#fffaf4;color:#a06784;font-size:11px;min-height:44px}.together-footnote{font-size:10px;color:#a08292;margin-top:20px;margin-bottom:0}.together-hearts{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;overflow:visible}.together-hearts>span{position:absolute;top:40%;font-size:30px;color:#cb8eab;animation:little-us-heart 4s ease-in-out infinite}@keyframes booth-sparkle{0%,to{opacity:.5;scale:.8;rotate:-10deg}50%{opacity:1;scale:1.12;rotate:10deg}}@keyframes little-us-heart{0%{translate:0 10px;opacity:0;scale:.7}25%{opacity:.8}to{translate:15px -170px;opacity:0;scale:1.2}}@media(max-width:1100px){.scrapbook-rail{justify-content:flex-start;overflow-x:auto;scroll-snap-type:x mandatory;padding:35px 20px 40px;scrollbar-width:thin;scrollbar-color:#d9b9c8 transparent}.photo-print{flex:0 0 210px;scroll-snap-align:center}.cutie-booth{gap:45px}.scrapbook-hint{font-size:21px}.photo-universe h2{font-size:45px}}@media(max-width:650px){.photo-scrapbook{padding-top:35px;padding-bottom:50px}.photo-scrapbook .section-heading p{font-size:12px}.photo-scrapbook .eyebrow{font-size:7px;letter-spacing:1.6px}.scrapbook-rail{margin-left:-8%;margin-right:-8%;padding:35px 9% 40px;gap:26px;min-height:400px;scroll-padding:25px}.photo-print{flex-basis:235px;padding:12px 12px 20px}.print-image{aspect-ratio:3/4}.print-caption{font-size:25px;min-height:32px}.print-number{font-size:7px}.print-expand{opacity:1}.scrapbook-hint{font-size:21px;line-height:1.4;max-width:280px;margin:20px auto 0}.photo-universe{padding-top:60px;padding-bottom:45px}.photo-universe h2{font-size:35px}.photo-universe .section-heading p{font-size:12px}.universe-stage{width:calc(100% + 40px);margin-left:-20px;height:400px;margin-top:-5px}.universe-orbit{left:0;right:0;top:15%;bottom:10%;opacity:.5}.universe-orbit.second{left:10%;right:10%;top:4%;bottom:4%}.universe-controls{gap:10px;margin-top:10px}.universe-controls>button{width:40px;height:40px;flex-shrink:0}.photo-dots{gap:3px}.photo-dots>button{width:32px;height:38px;font-size:9px}.universe-caption>.handwritten{font-size:23px}.universe-caption{min-height:105px}.photo-modal{padding:48px 15px 25px}.photo-modal h2{font-size:28px;margin:0 0 15px}.photo-modal .close{margin:-30px -5px 0 0}.lightbox-image{height:55dvh;min-height:180px}.lightbox-image img{border-width:5px}.photo-modal p{font-size:11px}.photo-modal .handwritten{font-size:21px}.cutie-booth{grid-template-columns:1fr;gap:65px;padding-top:65px;padding-bottom:65px}.booth-copy{text-align:center}.booth-copy p{font-size:12px}.booth-copy .eyebrow{font-size:8px}.booth-modes{justify-content:center;gap:7px;margin-top:20px}.booth-modes button{font-size:10px;padding:10px 12px}.booth-note.handwritten{font-size:23px;margin-bottom:0}.booth-frame{max-width:290px;rotate:2deg;padding:11px}.booth-bottom>.handwritten{font-size:22px}.booth-thumbnails button{width:40px;height:40px}.booth-photo{aspect-ratio:9/13}.letter-section{gap:0;padding-top:55px;padding-bottom:85px}.envelope-stage{padding-top:135px;padding-bottom:35px;max-width:340px}.keepsake-envelope{height:220px}.env-paper{height:185px;padding:20px 12px;gap:10px}.env-paper .handwritten{font-size:24px}.env-address{left:18px;font-size:24px;top:26px}.env-bottom{font-size:7px;letter-spacing:1.5px}.env-open-label{font-size:21px}.together-section{padding-top:65px;padding-bottom:45px}.together-section .section-heading p{font-size:12px}.together-stage{height:330px;width:100%;margin-top:15px}.paired-portraits{gap:12px}.together-print{width:45%;padding:8px 8px 12px}.together-photo{height:195px}.together-print>.handwritten{font-size:23px;margin-top:9px}.together-print>small{font-size:5px;letter-spacing:.7px}.together-heart{width:50px;height:50px;left:calc(50% - 25px);border-width:4px;top:43%}.together-heart svg{width:23px}.together-orbit{top:20px;right:-15px;bottom:10px;left:-15px}.together-ending>.handwritten{font-size:24px;line-height:1.4;margin:10px 0 20px}.together-footnote{font-size:9px}.together-tape{width:45px;left:calc(50% - 22px);height:19px;top:-9px}}@media(max-width:370px){.together-stage{height:290px}.together-photo{height:165px}.together-print>.handwritten{font-size:21px}.together-print>small{font-size:4.5px}.booth-modes button{padding:10px;font-size:9px}.universe-stage{height:370px}.universe-controls{gap:4px}.photo-dots>button{width:30px;height:38px}.universe-caption>.handwritten{font-size:21px}.env-address,.env-paper .handwritten{font-size:21px}}@media(prefers-reduced-motion:reduce){.booth-decorations>span,.together-hearts>span,.heart-joined{animation:none!important}.together-hearts{display:none}}.universe-stage>.universe-loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none}.universe-loading .universe-flat{height:90%}@media(max-width:650px){.together-print>small{font-size:7px;letter-spacing:.3px;line-height:1.6;display:block;margin-top:3px}}@media(max-width:370px){.together-print>small{font-size:6.5px;letter-spacing:.15px}}@media(max-width:650px){.together-print{width:43%}}.hero-keepsake{position:absolute;right:-1%;bottom:9%;width:114px;padding:7px 7px 10px;background:#fffaf0;box-shadow:2px 6px #e8d8ca,5px 15px 25px #7952671a;border:1px solid #e2cfc4;rotate:10deg;z-index:2}.hero-art .hero-keepsake>img{display:block;width:100%;height:116px;margin:0;max-width:100%;object-fit:cover;object-position:50% 32%;border-radius:0;-webkit-mask-image:none;mask-image:none;mix-blend-mode:normal;filter:none}.hero-keepsake .handwritten{display:block;font-size:18px;white-space:nowrap;text-align:center;margin-top:5px}.hero-keepsake:before{content:"";position:absolute;width:42px;height:17px;top:-10px;left:30%;background:#e6c4d4ba;rotate:-15deg}@media(max-width:650px){.hero-keepsake{width:86px;right:0;bottom:9%;padding:5px 5px 8px}.hero-art .hero-keepsake>img{height:85px}.hero-keepsake .handwritten{font-size:14px}.hero-keepsake:before{width:30px;height:14px}}
