@import "https://fonts.googleapis.com/css2?family=Caveat:wght@600;700&family=Nunito:wght@400;600;700;800&display=swap";:root{--sky-blue:#72b9ff;--sky-deep:#4197f5;--cloud-white:#fffdf8;--blush-light:#ffe4eb;--blush:#ffcad8;--romantic-pink:#ff799c;--hot-pink:#f6537d;--rose:#e94970;--cream:#fff9f2;--warm-cream:#fff3e6;--peach:#ffd3bd;--soft-yellow:#ffe59a;--sunlight:#fff0b7;--meadow-light:#b7dc79;--meadow:#7ebb5d;--forest:#315f49;--brown:#9b684a;--chocolate:#50362f;--deep-brown:#31221e;--twilight:#5a5c91;--night-blue:#18233c;--deep-night:#0b1428;--star-gold:#ffe893;--firefly:#fff3a3;--text-dark:#3b2925;--text-secondary:#745e57}*{box-sizing:border-box}html,body,#root{width:100%;margin:0;padding:0}body{color:var(--text-dark);background:var(--cream);-webkit-font-smoothing:antialiased;font-family:Nunito,sans-serif;overflow-x:hidden}::selection{background:var(--blush);color:var(--deep-brown)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--cream)}::-webkit-scrollbar-thumb{background:var(--blush);border-radius:10px}h1,h2,h3,.display{font-family:Caveat,cursive;font-weight:700}button{cursor:pointer;background:0 0;border:none;font-family:Nunito,sans-serif}a{color:inherit}.section{text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:100vh;padding:4rem 1.25rem;display:flex;position:relative;overflow:hidden}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(20px)}.reveal.in-view{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.reveal{transition:opacity .3s;transform:none!important}*{animation:none!important}}.btn-primary{background:linear-gradient(135deg, var(--romantic-pink), var(--hot-pink));color:#fff;border-radius:999px;padding:.9rem 2rem;font-size:1.05rem;font-weight:800;transition:transform .18s,box-shadow .18s;box-shadow:0 8px 20px #f6537d59}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 24px #f6537d73}.btn-primary:active{transform:translateY(1px)}.btn-secondary{color:var(--text-dark);background:#ffffff80;border-radius:999px;padding:.7rem 1.5rem;font-weight:700;transition:transform .18s}.btn-secondary:hover{transform:translateY(-2px)}.placeholder-box{background:repeating-linear-gradient(45deg, var(--blush-light), var(--blush-light) 10px, var(--cream) 10px, var(--cream) 20px);border:2px dashed var(--romantic-pink);color:var(--rose);text-align:center;border-radius:16px;justify-content:center;align-items:center;min-height:120px;padding:1rem;font-weight:700;display:flex}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.008)}}@keyframes swayFlower{0%,to{transform:rotate(-1.5deg)}50%{transform:rotate(1.5deg)}}@keyframes drift{0%{opacity:0;transform:translate(-10vw)translateY(0)rotate(0)}10%{opacity:1}90%{opacity:1}to{opacity:0;transform:translate(110vw)translateY(40px)rotate(180deg)}}@keyframes cloudDrift{0%{transform:translate(-20%)}to{transform:translate(20%)}}@keyframes twinkle{0%,to{opacity:.3}50%{opacity:1}}@keyframes heartPop{0%{opacity:0;transform:scale(0)}50%{opacity:1;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.char{animation:3.6s ease-in-out infinite floatY,5s ease-in-out infinite breathe}.flower-near,.flower-mid,.flower-far{animation:5s ease-in-out infinite swayFlower;display:inline-block}.flower-mid{animation-duration:6s}.flower-far{animation-name:none;animation-duration:7s}.petal{pointer-events:none;opacity:.8;font-size:1.2rem;animation:linear infinite drift;position:absolute;top:10%}.cloud{filter:drop-shadow(0 4px 6px #0000000d);font-size:3rem;animation:ease-in-out infinite alternate cloudDrift;position:absolute}.star{animation:3s ease-in-out infinite twinkle}.heart-burst{pointer-events:none;animation:.6s forwards heartPop;position:absolute}
