@import"https://fonts.googleapis.com/css2?family=Gloria+Hallelujah&family=Indie+Flower&family=Sue+Ellen+Francisco&display=swap";:root{--bg-mint: #E0EFD5;--lemon-yellow: #FCEFA6;--lemon-dark: #F5D76E;--paper: #FFFCF5;--ink: #181818;--shadow-offset: 3px;--border-width: 2.5px}body{margin:0;padding:0;background-color:var(--bg-mint);font-family:Indie Flower,cursive;color:var(--ink);overflow-x:hidden;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.08'/%3E%3C/svg%3E")}.desk-surface{min-height:100vh;display:flex;justify-content:center;align-items:center;padding:4rem 2rem;box-sizing:border-box;perspective:1000px}.paper-note{background-color:var(--paper);width:100%;max-width:800px;min-height:600px;position:relative;padding:4rem;box-sizing:border-box;border:var(--border-width) solid var(--ink);border-radius:2px 255px 3px 25px/255px 5px 225px 3px;box-shadow:10px 10px #0000001a,5px 5px 15px #0000000d;transform:rotate(-1deg);transition:transform .3s ease}.paper-note:hover{transform:rotate(0) scale(1.01)}h1{font-family:Gloria Hallelujah,cursive;font-size:5rem;line-height:.8;margin:0 0 2rem;text-align:center;transform:rotate(-2deg)}h1 span{display:inline-block}h1 .highlight{color:var(--ink);position:relative;z-index:1}h1 .highlight:after{content:"";position:absolute;bottom:10px;left:-10px;width:110%;height:25px;background:var(--lemon-yellow);z-index:-1;border-radius:4px;transform:skew(-10deg) rotate(-2deg);opacity:.8}h2{font-family:Gloria Hallelujah,cursive;font-size:2rem;margin-top:3rem;border-bottom:2px solid var(--ink);display:inline-block;padding-bottom:.5rem;border-radius:0 0 100%}p{font-size:1.5rem;line-height:1.6;margin-bottom:1.5rem}.handwritten-highlight{background-color:transparent;background-image:linear-gradient(to right,#fcefa6cc,#fcefa699);padding:0 5px;box-decoration-break:clone;-webkit-box-decoration-break:clone;border-radius:3px}.memory-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin:3rem 0}@media(max-width:480px){.desk-surface{padding:1.5rem .75rem}.paper-note{padding:1.5rem;width:100%;transform:rotate(0);min-height:auto;border-radius:2px 40px 3px 15px/40px 5px 35px 3px}.paper-note:hover{transform:none}h1{font-size:2.4rem;line-height:1;margin-bottom:1.5rem}h1 .highlight:after{bottom:5px;height:16px;left:-5px}h2{font-size:1.5rem;margin-top:2rem}p{font-size:1.15rem;line-height:1.5;margin-bottom:1rem}.memory-grid{grid-template-columns:1fr;gap:1.5rem;margin:2rem 0}}@media(min-width:481px)and (max-width:768px){.desk-surface{padding:2rem 1rem}.paper-note{padding:2rem;width:95%}h1{font-size:3rem}.memory-grid{grid-template-columns:1fr 1fr}}.sticker{position:absolute;z-index:10;pointer-events:none}.sticker-top-left{top:-30px;left:-40px;width:120px;transform:rotate(-15deg)}@keyframes float{0%{transform:translateY(0) rotate(-15deg)}50%{transform:translateY(-10px) rotate(-12deg)}to{transform:translateY(0) rotate(-15deg)}}.floating{animation:float 4s ease-in-out infinite}@media(max-width:768px){.sticker-top-left{width:90px;top:-20px;left:-10px}}@media(max-width:480px){.sticker-top-left{width:70px;top:-15px;left:-5px}}.sticker-bottom-right{bottom:-30px;right:-20px;width:100px;transform:rotate(15deg)}@keyframes float-choco{0%{transform:translateY(0) rotate(15deg)}50%{transform:translateY(-10px) rotate(18deg)}to{transform:translateY(0) rotate(15deg)}}.floating-choco{animation:float-choco 4s ease-in-out infinite}.polaroid{background:#fff;padding:1rem 1rem 3rem;border:var(--border-width) solid var(--ink);box-shadow:4px 4px #00000026;transform:rotate(2deg);transition:all .2s ease;cursor:pointer;text-align:center}.polaroid:nth-child(2n){transform:rotate(-1.5deg)}.polaroid:hover{transform:scale(1.05) rotate(0)!important;box-shadow:8px 8px #0000001a;z-index:10}.polaroid-img{background-color:var(--lemon-yellow);height:200px;width:100%;border:2px solid var(--ink);margin-bottom:1rem;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.polaroid-img img{width:100%;height:100%;object-fit:cover}.polaroid-caption{font-family:Sue Ellen Francisco,cursive;font-size:1.5rem;color:#444}@media(max-width:480px){.polaroid{padding:.75rem .75rem 2rem}.polaroid-img{height:250px}}.gift-wrapper{display:flex;justify-content:center;margin-top:3rem;margin-bottom:1rem}.gift-box{background:none;border:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:0;transition:transform .2s ease}.gift-box:hover{transform:scale(1.08)}.gift-box:active{transform:scale(.95)}.gift-body,.gift-lid{fill:var(--lemon-yellow);stroke:var(--ink);stroke-width:2.5px}.gift-ribbon{fill:#e07a5f;stroke:var(--ink);stroke-width:1.5px}.gift-bow{fill:#e07a5f;stroke:var(--ink);stroke-width:2px}.gift-bow-center{fill:#c1554d;stroke:var(--ink);stroke-width:2px}.gift-label{font-family:Gloria Hallelujah,cursive;font-size:1.3rem;color:var(--ink)}@keyframes shake{0%,to{transform:rotate(0)}10%{transform:rotate(-4deg)}20%{transform:rotate(4deg)}30%{transform:rotate(-4deg)}40%{transform:rotate(4deg)}50%{transform:rotate(0)}}.shake{animation:shake 2s ease-in-out infinite}.gift-opened{text-align:center}@keyframes pop-in{0%{transform:scale(0);opacity:0}60%{transform:scale(1.15);opacity:1}to{transform:scale(1);opacity:1}}.gift-reveal{animation:pop-in .5s ease-out}.gift-emoji{font-size:4rem;display:block;margin-bottom:.5rem}.gift-message{font-family:Gloria Hallelujah,cursive;font-size:1.5rem;margin:.5rem 0 1rem}.gift-link{display:inline-block;background:var(--lemon-yellow);font-family:Gloria Hallelujah,cursive;font-size:1.4rem;padding:.8rem 2.5rem;border:var(--border-width) solid var(--ink);border-radius:255px 15px 225px/15px 225px 15px 255px;cursor:pointer;text-decoration:none;color:var(--ink);transition:all .1s ease;box-shadow:4px 4px 0 var(--ink)}.gift-link:hover{background:#fff5cc;transform:translate(-1px,-1px);box-shadow:6px 6px 0 var(--ink)}.gift-link:active{transform:translate(4px,4px);box-shadow:0 0 0 var(--ink)}
