:root{--cream:#fff7f0;--paper:#fffaf6;--pink:#f4c9d6;--lav:#e9dff8;--peach:#ffe5d6;--mauve:#684d60;--accent:#d77da8;--ink:#50414c;--sage:#b9c8ad;--shadow:0 18px 45px #684d6012;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--script:'Sacramento',cursive}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:15px;overflow-x:hidden}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}.hidden{display:none!important}.paper-grain{position:fixed;inset:0;z-index:20;pointer-events:none;opacity:.14;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.14'/%3E%3C/svg%3E")}.floaties{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:0}.floaties span{position:absolute;color:#d77da83a;font-size:20px;animation:float 12s ease-in-out infinite}.floaties span:nth-child(1){top:20%;left:3%}.floaties span:nth-child(2){top:62%;right:4%;animation-delay:-3s}.floaties span:nth-child(3){top:78%;left:8%;animation-delay:-7s}.floaties span:nth-child(4){top:36%;right:8%;animation-delay:-1s}.floaties span:nth-child(5){top:6%;left:77%;animation-delay:-5s}@keyframes float{50%{transform:translateY(-16px) rotate(15deg)}}
.topbar{height:78px;position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:0 max(calc((100vw - 1160px)/2),28px);background:#fffaf2e8;backdrop-filter:blur(12px);border-bottom:1px solid #684d600d}.wordmark{font-family:var(--serif);font-weight:700;font-size:24px;letter-spacing:-1px}.wordmark span,.pink{color:var(--accent)}.topbar nav{display:flex;gap:34px;color:#8c7885;font-size:12px}.topbar nav a:hover{color:var(--accent)}.music-toggle{border:1px solid #e7d5dd;border-radius:30px;background:#fffaf8;padding:9px 15px;color:var(--accent);font-size:12px}.music-toggle span{color:var(--mauve);margin-left:5px}.music-toggle.active{background:#f4e0e9}.section-wrap{width:min(1120px,calc(100% - 48px));margin:auto;position:relative;z-index:1}.intro{min-height:610px;display:flex;align-items:center;justify-content:space-between;padding:60px 7% 70px}.intro-copy{max-width:510px;position:relative;z-index:2}.eyebrow{font-size:9px;font-weight:700;letter-spacing:2px;color:#a38a99}.intro h1{font:600 clamp(55px,8vw,92px)/.98 var(--serif);letter-spacing:-4px;margin:22px 0 6px;color:#594653}.intro h1 em,.section-heading h2 em,.friendship-copy h2 em,.birthday-inner h2 em{font-weight:500;color:var(--accent)}.hand{font:32px var(--script);color:#99778c}.intro-note{margin:12px 0 30px;font-size:36px}.primary-button,.secondary-button,.hug-button{border:0;border-radius:28px;background:var(--mauve);color:white;padding:15px 24px;font-size:10px;font-weight:700;letter-spacing:1.4px;box-shadow:0 8px 22px #684d6029;transition:transform .2s,box-shadow .2s}.primary-button:hover,.secondary-button:hover,.hug-button:hover{transform:translateY(-3px);box-shadow:0 12px 26px #684d6033}.primary-button span{margin-left:24px}.warning{font-size:10px;color:#ad95a2;margin-top:22px}.gift-scene{width:320px;height:340px;position:relative;border:0;background:transparent;margin-right:7%;filter:drop-shadow(0 25px 24px #7552671c);transition:transform .3s}.gift-scene:hover{transform:translateY(-5px) rotate(-2deg)}.gift-body{position:absolute;width:200px;height:150px;background:#d88eae;left:59px;top:129px;border-radius:8px 8px 16px 16px;box-shadow:inset -11px 0 #c97d9e}.gift-body:before{content:'';position:absolute;width:35px;height:100%;left:83px;background:#fae2e9}.gift-body i{position:absolute;width:150px;height:26px;border:12px solid #f7e4e9;border-radius:50%;left:25px;top:-27px;transform:rotate(-8deg)}.gift-lid{position:absolute;z-index:2;width:226px;height:42px;left:46px;top:110px;border-radius:9px;background:#e4a5bc;transform-origin:15% 100%;box-shadow:inset -12px 0 #cf89a4;transition:transform .8s cubic-bezier(.2,.8,.2,1)}.gift-lid:after{content:'';position:absolute;left:95px;top:0;height:100%;width:36px;background:#fae2e9}.gift-bow{position:absolute;z-index:4;top:62px;left:136px;font-size:69px;transform:rotate(-9deg);color:#c47494}.gift-shadow{position:absolute;width:240px;height:34px;left:39px;top:275px;border-radius:50%;background:#684d6014}.mascot{position:absolute;top:210px;left:118px;z-index:0;font-size:19px;color:#745364;opacity:0;transform:translateY(15px);transition:all .5s}.gift-spark{position:absolute;color:#d79ab4;font-size:28px;animation:float 4s infinite}.s1{top:67px;left:40px}.s2{right:28px;top:117px;animation-delay:-1s}.s3{right:42px;top:220px;animation-delay:-2s}.opened .gift-lid{transform:translate(-38px,-92px) rotate(-22deg)}.opened .gift-bow{transform:translate(-38px,-91px) rotate(-28deg);transition:transform .8s}.opened .mascot{opacity:1;transform:translateY(-15px)}.opened .gift-spark{animation:burst 1.1s ease-out forwards}@keyframes burst{to{transform:translate(var(--x,0),-80px) scale(1.6);opacity:0}}.intro-sticker{position:absolute;background:#fffcf3;padding:12px 18px;font:19px var(--script);color:#94758a;box-shadow:0 7px 17px #58445012;transform:rotate(-7deg)}.sticker-one{right:0;top:112px}.sticker-two{right:4px;bottom:75px;transform:rotate(5deg);background:#f8eaf0}.welcome-strip{display:flex;align-items:center;justify-content:center;gap:28px;background:#f7e9ed;padding:24px 20px;margin:0 0 95px}.welcome-strip p{margin:0;font-size:28px}.welcome-spark{color:#c48ca8}
.scrapbook{padding:45px 5% 100px}.section-heading{text-align:center}.section-heading h2,.friendship-copy h2{font:600 clamp(34px,5vw,51px)/1.12 var(--serif);letter-spacing:-1.6px;margin:15px 0}.section-heading p{color:#8b7884;font-size:13px}.scrap-tools{display:flex;align-items:center;justify-content:space-between;max-width:890px;margin:50px auto 28px;color:#8b7884;font-size:11px}.counter span{color:var(--accent);font-size:17px;margin-right:6px}.counter b{color:var(--mauve)}.quiet-button{border:0;background:transparent;color:var(--accent);font-size:11px;border-bottom:1px solid #d9afc0;padding:6px 1px}.surprise-board{max-width:920px;margin:auto;display:grid;grid-template-columns:repeat(5,1fr);grid-auto-rows:132px;gap:21px 28px;padding:16px 26px 20px}.scrap-item{position:relative;border:0;background:#fffcf6;border-radius:4px 5px 7px 5px;box-shadow:4px 7px 15px #5a435416;transform:rotate(var(--rotation));transition:transform .25s,box-shadow .25s;display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden;padding:12px 8px}.scrap-item:before{content:'';position:absolute;left:0;top:0;width:100%;height:7px;background:#f5dce4}.scrap-item:nth-child(5n+2){background:#f6f0fb}.scrap-item:nth-child(5n+2):before{background:#e6dbf2}.scrap-item:nth-child(5n+3){background:#fff2e8}.scrap-item:nth-child(5n+3):before{background:#f5dfd0}.scrap-item:hover{z-index:3;transform:rotate(0) scale(1.07);box-shadow:0 12px 26px #5a435422}.item-number{position:absolute;top:13px;left:12px;color:#bca9b5;font-size:8px;letter-spacing:1px}.item-icon{font-size:34px;color:var(--accent);line-height:1.15}.item-label{font:18px var(--script);margin-top:6px;color:#71586a}.item-photo{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.28;mix-blend-mode:multiply}.item-label,.item-icon,.item-number,.opened-mark{z-index:1}.opened-mark{position:absolute;right:8px;top:8px;background:#a3b598;color:white;font-size:9px;width:17px;height:17px;border-radius:50%;display:grid;place-items:center;opacity:0}.is-opened .opened-mark{opacity:1}.is-opened .item-icon{color:#ba8ba1}.scrap-item:nth-child(7n+1){border-radius:45% 45% 8px 8px}.scrap-item:nth-child(7n+5){clip-path:polygon(8% 0,92% 0,100% 9%,100% 91%,92% 100%,8% 100%,0 91%,0 9%)}.scrap-item:nth-child(9n+8){border-radius:30% 30% 8px 8px}.bestie-nudge{max-width:880px;margin:25px auto 0;display:flex;align-items:center;gap:10px;font-size:10px;color:#a48a99}.bestie-nudge>span:first-child{font:20px var(--script);color:var(--accent)}.bestie-nudge button{border:1px dashed #deb9c9;border-radius:18px;background:#fffaf8;color:#a16d87;padding:8px 14px;font-size:8px;letter-spacing:1px}.bestie-nudge button.clicked{background:#fae2e9}
.friendship-section{padding:80px 4% 110px}.friendship-card{min-height:360px;background:linear-gradient(120deg,#f4e7ed,#f7f0f5 55%,#f1ebf8);border-radius:18px;display:grid;grid-template-columns:40% 60%;align-items:center;padding:50px 8%;overflow:hidden;position:relative}.friendship-card:after{content:'✧';position:absolute;color:#d2b5c7;font-size:120px;right:5%;top:4%;opacity:.35}.friendship-art{display:grid;place-items:center;position:relative}.broken-heart{border:0;background:transparent;font-size:130px;color:#d77da8;line-height:1;transition:transform .5s}.broken-heart:before{content:''}.broken-heart:hover{transform:scale(1.1) rotate(-5deg)}.broken-heart.mended{animation:heartheal .7s ease both}@keyframes heartheal{50%{transform:scale(1.35) rotate(12deg);filter:drop-shadow(0 0 20px #d77da866)}}.art-doodle{position:absolute;bottom:30px;right:14%;font:22px var(--script);color:#a48497;transform:rotate(-8deg)}.mini-star{position:absolute;top:22%;right:23%;color:#c38ca9;font-size:27px}.friendship-copy h2{font-size:43px}.friendship-copy p{font-size:12px;line-height:2.1;color:#776576}.friendship-copy .hand{font-size:29px;margin:8px 0 17px}.secondary-button{padding:12px 17px;font-size:9px;letter-spacing:.9px;background:#b67d99;box-shadow:0 7px 15px #684d6017}.friendship-response{display:block;min-height:18px;margin:12px 0 0;font:22px var(--script);color:#9f6685}
.garden-section{padding:40px 5% 110px}.garden{max-width:830px;margin:50px auto 20px;display:flex;align-items:flex-end;justify-content:center;gap:clamp(6px,3vw,28px);min-height:145px;border-bottom:2px solid #b7c4a6;padding-bottom:8px}.garden-flower{width:62px;height:130px;position:relative;border:0;background:none;display:flex;align-items:flex-start;justify-content:center;padding:0;transition:transform .25s;animation:sway 4s ease-in-out infinite alternate;animation-delay:calc(var(--flower)*-.4s)}.garden-flower span{position:absolute;top:0;color:#d77da8;font-size:43px;text-shadow:1px 2px #f0c8d4}.garden-flower:nth-child(3n) span{color:#bba6d1}.garden-flower:nth-child(4n) span{color:#e6b790}.garden-flower i{position:absolute;top:43px;width:3px;height:82px;background:#9eb091;border-radius:3px}.garden-flower i:before,.garden-flower i:after{content:'';position:absolute;width:18px;height:9px;background:#b1c2a5;border-radius:100% 0 100% 0;top:37px;left:-16px;transform:rotate(20deg)}.garden-flower i:after{top:55px;left:1px;transform:rotate(75deg)}.garden-flower:hover,.garden-flower.bloomed{transform:translateY(-8px) scale(1.12)}@keyframes sway{to{rotate:4deg}}.garden-note{min-height:48px;text-align:center;color:#9a7890;font:27px var(--script)}
.play-section{padding:35px 3% 110px}.play-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:45px auto 24px;max-width:1000px}.play-card{background:#fffaf6;border:1px solid #f0e5e4;border-radius:14px;padding:26px 24px;min-height:222px;box-shadow:var(--shadow)}.card-icon{font-size:25px;color:#cf8ba8}.play-card h3{font:500 22px var(--serif);margin:12px 0 6px}.play-card p{font-size:11px;line-height:1.65;color:#8d7b87;min-height:36px}.play-card .secondary-button{margin-top:8px}.activity-result{font:20px var(--script);color:#9a6683;margin-top:15px;line-height:1.5}.activity-result strong,.activity-result span,.activity-result small{display:block}.activity-result span{font:8px var(--sans);letter-spacing:1.4px}.activity-result strong{font:23px var(--serif);color:#755a6c;margin:6px 0}.activity-result small{font:10px var(--sans);color:#8e7987}.heart-game{height:42px;display:flex;gap:11px;align-items:center}.collect-heart{border:0;background:transparent;color:#d77da8;font-size:23px;transition:all .3s}.collect-heart.collected{opacity:.18;transform:scale(.5) translateY(-12px)}.subscription{max-width:1000px;margin:auto;background:#f6e9ed;border-radius:9px;text-align:center;padding:14px;font-size:11px;color:#846d7d}.subscription span{color:#a07891}
.birthday-section{position:relative;background:linear-gradient(165deg,#f3e5ee 0%,#efe9f7 40%,#fff5ec 100%);min-height:1050px;text-align:center;overflow:hidden;padding:100px 20px 40px}.birthday-section:before,.birthday-section:after{content:'✿';position:absolute;color:#d9c7dc;font-size:180px;opacity:.17}.birthday-section:before{left:-35px;top:24%}.birthday-section:after{right:-35px;top:54%;font-size:140px}.birthday-inner{max-width:850px;margin:auto;position:relative;z-index:1}.birthday-inner h2{font:600 clamp(43px,7vw,76px)/1.03 var(--serif);letter-spacing:-2px;margin:20px 0}.birthday-inner>p{font:26px var(--script);color:#9d7e94;margin:12px}.birthday-lights{position:absolute;top:36px;left:0;right:0;color:#c79cb4;letter-spacing:4px;font-size:16px}.balloons{position:absolute;left:4%;right:4%;top:220px;display:flex;justify-content:space-between;pointer-events:none}.balloons i{font-style:normal;font-size:42px;color:#d991ae;animation:balloon 4s ease-in-out infinite}.balloons i:nth-child(2){color:#bda8d1;animation-delay:-1s}.balloons i:nth-child(3){color:#efb58d;animation-delay:-2s}.balloons i:nth-child(4){color:#c9b9d2;animation-delay:-3s}@keyframes balloon{50%{transform:translateY(-20px) rotate(8deg)}}.cake-wrap{width:330px;height:280px;margin:35px auto 2px;position:relative}.cake{position:absolute;left:50%;transform:translateX(-50%);border-radius:10px 10px 16px 16px;box-shadow:inset -8px 0 #ad769016,0 6px 8px #79566a0d}.cake-top{top:76px;width:170px;height:52px;background:#f5cdd8;border-radius:50% 50% 10px 10px}.cake-top:before{content:'';position:absolute;left:0;right:0;top:17px;height:36px;border-radius:10px 10px 15px 15px;background:repeating-radial-gradient(ellipse at top,#fff6ef 0 9px,transparent 10px 21px);background-color:#f6d9df}.cake-middle{top:119px;width:210px;height:55px;background:#df9fba}.cake-middle:before{content:'';position:absolute;left:0;right:0;top:0;height:15px;border-radius:50%;background:#f6dde5}.cake-bottom{top:163px;width:250px;height:58px;background:#efd3bd}.cake-bottom:before{content:'';position:absolute;left:0;right:0;top:0;height:16px;border-radius:50%;background:#fff1e5}.cake-plate{position:absolute;top:218px;left:26px;width:278px;height:18px;border-radius:50%;background:#fffaf7;box-shadow:0 5px 12px #684d601a}.cake-topper{position:absolute;top:44px;left:50%;transform:translateX(-50%) rotate(-5deg);z-index:2;color:#a46b8d;font:23px var(--script);white-space:nowrap}.cake-flower{position:absolute;z-index:3;top:174px;left:45%;font-size:23px;color:#fff5ef}.candles{position:absolute;top:25px;left:50%;transform:translateX(-50%);z-index:3;display:flex;gap:16px}.candle{position:relative;width:17px;height:58px;border:0;background:repeating-linear-gradient(135deg,#fff9ee 0 6px,#d88eae 6px 10px);border-radius:3px;padding:0}.candle:nth-child(2n){background:repeating-linear-gradient(135deg,#fff9ee 0 6px,#aea1ca 6px 10px)}.candle i{position:absolute;bottom:-3px;left:0;width:100%;height:5px;border-radius:50%;background:#b37c99}.flame{position:absolute;top:-25px;left:1px;color:#efa95a;font-size:20px;animation:flicker .6s infinite alternate}@keyframes flicker{to{transform:scale(.83) rotate(9deg);opacity:.75}}.candle.out .flame{display:none}.candle.out:after{content:'✧';position:absolute;top:-25px;left:2px;color:#dda2bd;font-size:17px;animation:float 1.4s}.candle-hint{font-size:11px;color:#977c8f;margin:0 0 12px}.birthday-reveal{font:24px var(--serif);color:#8b5676;opacity:0;transform:translateY(8px);transition:.6s;margin:13px}.birthday-reveal.visible{opacity:1;transform:none}.birthday-reveal span{font:22px var(--script);color:#a9819b}.letter-envelope{margin:45px auto 20px;width:300px;transition:.5s}.envelope-button{width:300px;height:165px;border:0;position:relative;background:#e5b4c5;border-radius:7px;box-shadow:0 14px 22px #684d6018;overflow:hidden}.envelope-button:before{content:'';position:absolute;inset:0;background:linear-gradient(35deg,transparent 49%,#d597b1 50%) left/50% 100% no-repeat,linear-gradient(-35deg,transparent 49%,#d597b1 50%) right/50% 100% no-repeat}.envelope-flap{position:absolute;inset:0;background:#edcad5;clip-path:polygon(0 0,100% 0,50% 60%);transform-origin:top;transition:transform .7s;z-index:2}.envelope-stamp{position:absolute;z-index:3;top:70px;left:50%;transform:translateX(-50%);width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:white;background:#c47d9a;font-size:18px}.envelope-label,.envelope-hand{position:absolute;left:0;right:0;bottom:17px;z-index:3;color:#845f75;font:23px var(--script)}.envelope-hand{bottom:0;font-size:17px;color:#ad819a}.letter-envelope.opened .envelope-flap{transform:rotateX(180deg);z-index:0}.letter-envelope.opened .envelope-stamp{opacity:0}.birthday-letter{max-width:600px;margin:35px auto 25px;padding:40px 55px;text-align:left;background:#fffaf2;position:relative;box-shadow:0 18px 50px #654b5e17;border:1px solid #f0e0d8;opacity:0;transform:translateY(12px)}.birthday-letter:before{content:'';position:absolute;inset:12px;border:1px solid #ecd8d7;pointer-events:none}.letter-visible{animation:letterin .65s ease forwards}@keyframes letterin{to{opacity:1;transform:none}}.birthday-letter h3{font:500 32px var(--serif);text-align:center;margin:14px 0 25px}.birthday-letter p{font-size:12px;line-height:1.95;color:#786a71}.letter-flower{position:absolute;right:45px;top:32px;color:#cf93ad;font-size:22px}.letter-signoff{text-align:right!important;font-size:29px!important}.hug-button{margin:16px auto;background:#bd7998}.final-message{max-width:570px;margin:28px auto;padding:28px;background:#fff9f5;border-radius:16px;box-shadow:var(--shadow)}.hug-figure{font-size:31px;color:#886477}.hug-figure span{color:#df81a6;font-size:36px}.final-message p{font:30px var(--script);color:#96788d}.final-message h3{font:500 27px var(--serif);color:#a45f82}.birthday-section footer{margin:65px auto 0;color:#9d8997;font-size:10px;letter-spacing:1px}.birthday-section footer span{color:var(--accent)}
.modal-backdrop{position:fixed;z-index:30;inset:0;background:#42344488;display:grid;place-items:center;padding:18px;backdrop-filter:blur(5px)}.surprise-modal{position:relative;background:#fffaf5;border-radius:14px;width:min(460px,100%);max-height:90vh;overflow:auto;padding:35px 38px;text-align:center;box-shadow:0 22px 70px #281c2c44;animation:modalin .3s ease}.surprise-modal:before{content:'';position:absolute;inset:10px;border:1px solid #f0e1e0;border-radius:10px;pointer-events:none}@keyframes modalin{from{transform:translateY(12px) scale(.97);opacity:0}to{transform:none;opacity:1}}.modal-close{position:absolute;right:18px;top:13px;border:0;background:transparent;font-size:26px;color:#9d8595;z-index:2}.modal-icon{font-size:43px;color:#d77da8;margin:6px}.surprise-modal h3{font:500 30px var(--serif);margin:10px 0}.surprise-modal>p{font-size:13px;line-height:1.8;color:#81727b}.modal-photo{width:100%;max-height:340px;object-fit:cover;border-radius:5px;margin:13px 0}.question-chip{position:fixed;z-index:24;right:22px;bottom:22px;width:min(350px,calc(100vw - 32px));background:#fffaf5;border:1px solid #eedde4;border-radius:14px;padding:23px 22px 18px;box-shadow:0 16px 45px #58435224;animation:modalin .25s ease}.question-chip>p{font:20px var(--serif);margin:3px 22px 12px 0}.question-chip small{display:block;font:11px var(--sans);color:#8d7986;margin-top:7px;line-height:1.4}.chip-spark{color:#d77da8}.question-chip>div{display:flex;gap:7px;flex-wrap:wrap}.question-chip>div button{border:1px solid #ead8df;background:#fff;color:#8d627b;border-radius:20px;padding:8px 11px;font-size:9px}.chip-close{position:absolute;right:12px;top:9px;border:0;background:none;color:#9b8997;font-size:20px}.toast{position:fixed;z-index:35;left:50%;bottom:28px;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#674d60;color:white;padding:13px 21px;border-radius:28px;box-shadow:0 9px 25px #4a354b36;font-size:12px;transition:.3s}.toast.show{opacity:1;transform:translate(-50%,0)}#confetti{position:fixed;inset:0;z-index:19;pointer-events:none}
@media(max-width:760px){.topbar{height:65px;padding:0 18px}.topbar nav{gap:13px;font-size:10px}.topbar nav a:nth-child(2){display:none}.wordmark{font-size:20px}.music-toggle{padding:7px 10px;font-size:10px}.section-wrap{width:calc(100% - 28px)}.intro{min-height:710px;padding:55px 8% 35px;flex-direction:column;justify-content:flex-start;align-items:flex-start}.intro h1{font-size:68px}.intro-copy{margin:auto 0 0}.gift-scene{position:absolute;right:8%;top:72px;width:260px;height:270px;margin:0;transform:scale(.78);transform-origin:top right}.gift-scene:hover{transform:scale(.78) translateY(-5px) rotate(-2deg)}.opened.gift-scene{transform:scale(.78)}.sticker-one{top:117px;left:0;right:auto}.sticker-two{top:200px;left:3%;right:auto;bottom:auto}.intro-note{font-size:31px}.welcome-strip{margin-bottom:48px;gap:12px}.welcome-strip p{font-size:23px;text-align:center}.scrapbook{padding:25px 0 65px}.section-heading h2,.friendship-copy h2{font-size:38px}.scrap-tools{margin:32px auto 15px;padding:0 4px}.surprise-board{grid-template-columns:repeat(3,1fr);grid-auto-rows:116px;gap:14px 11px;padding:12px 3px}.item-icon{font-size:29px}.item-label{font-size:16px}.bestie-nudge{flex-wrap:wrap;justify-content:center}.friendship-section{padding:50px 0 65px}.friendship-card{grid-template-columns:1fr;padding:28px 24px 35px;text-align:center}.friendship-art{height:165px}.broken-heart{font-size:105px}.art-doodle{bottom:6px;right:27%}.friendship-copy h2{font-size:38px}.garden-section{padding:25px 0 75px}.garden{gap:2px;margin:35px auto 16px;min-height:112px}.garden-flower{width:35px;height:108px}.garden-flower span{font-size:33px}.garden-flower i{height:70px;top:34px}.garden-note{font-size:23px;min-height:50px}.play-section{padding:20px 0 70px}.play-grid{grid-template-columns:1fr;gap:12px;margin:30px auto 18px}.play-card{min-height:0;padding:22px}.play-card p{min-height:auto}.subscription{line-height:1.8;font-size:10px}.birthday-section{padding-top:75px}.birthday-lights{font-size:12px;top:24px}.birthday-inner h2{font-size:54px}.balloons{top:210px;left:0;right:0}.balloons i{font-size:29px}.cake-wrap{transform:scale(.88);transform-origin:top center;margin-bottom:-25px}.birthday-letter{padding:34px 27px}.birthday-letter h3{font-size:27px}.birthday-letter p{font-size:11px}.question-chip{right:12px;bottom:12px}.floaties span{font-size:15px}}
@media(max-width:380px){.topbar nav{gap:9px}.topbar nav a:last-child{display:none}.intro h1{font-size:58px}.intro{min-height:675px}.scrap-item{padding-left:4px;padding-right:4px}.item-label{font-size:14px}.birthday-inner h2{font-size:46px}.cake-wrap{transform:scale(.77);margin-bottom:-55px}.garden-flower{width:30px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
