@import"https://fonts.googleapis.com/css2?family=Baloo+2:wght@400;500;600;700;800&family=Nunito:wght@400;600;700&display=swap";:root{--pink: #ff6b9d;--yellow: #ffd166;--green: #06d6a0;--blue: #118ab2;--purple: #9b5de5;--orange: #ff9f1c;--bg: #fef9ef;--text: #2d3436;--card-bg: #ffffff}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Nunito,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4{font-family:"Baloo 2",cursive}.floating-shapes{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;overflow:hidden}.shape{position:absolute;border-radius:50%;opacity:.15;animation:float 8s ease-in-out infinite}.shape:nth-child(1){width:120px;height:120px;background:var(--pink);top:10%;left:5%;animation-delay:0s}.shape:nth-child(2){width:80px;height:80px;background:var(--yellow);top:30%;right:8%;animation-delay:2s}.shape:nth-child(3){width:150px;height:150px;background:var(--green);bottom:15%;left:10%;animation-delay:4s}.shape:nth-child(4){width:60px;height:60px;background:var(--purple);top:60%;right:15%;animation-delay:1s}.shape:nth-child(5){width:100px;height:100px;background:var(--orange);bottom:5%;right:5%;animation-delay:3s}@keyframes float{0%,to{transform:translateY(0) rotate(0)}33%{transform:translateY(-20px) rotate(5deg)}66%{transform:translateY(10px) rotate(-3deg)}}nav{position:sticky;top:0;z-index:100;background:#fef9efe6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:3px solid var(--yellow);padding:.75rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.nav-logo{font-family:"Baloo 2",cursive;font-size:1.5rem;font-weight:800;color:var(--pink);text-decoration:none}.nav-logo span{color:var(--purple)}.nav-links{display:flex;gap:1.25rem;list-style:none;flex-wrap:wrap}.nav-links a{text-decoration:none;color:var(--text);font-weight:600;font-size:.95rem;padding:.3rem .6rem;border-radius:8px;transition:background .2s,color .2s}.nav-links a:hover{background:var(--yellow);color:var(--text)}.hero{position:relative;z-index:1;text-align:center;padding:5rem 2rem 4rem;background:linear-gradient(135deg,#fff0f5,#fef9ef,#f0f7ff)}.hero h1{font-size:clamp(2.2rem,5vw,3.5rem);color:var(--pink);margin-bottom:.5rem;line-height:1.2}.hero h1 .highlight{background:linear-gradient(135deg,var(--purple),var(--blue));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:clamp(1rem,2.5vw,1.35rem);color:#636e72;max-width:600px;margin:0 auto 2rem}.hero-emoji{font-size:4rem;display:block;margin-bottom:1rem;animation:bounce 2s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.section{position:relative;z-index:1;max-width:1000px;margin:0 auto;padding:4rem 1.5rem}.section-title{text-align:center;font-size:clamp(1.8rem,4vw,2.5rem);color:var(--purple);margin-bottom:.5rem}.section-subtitle{text-align:center;color:#636e72;font-size:1.1rem;margin-bottom:2.5rem;max-width:550px;margin-left:auto;margin-right:auto}.cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}.card{background:var(--card-bg);border-radius:1.25rem;padding:2rem 1.5rem;text-align:center;box-shadow:0 4px 20px #0000000f;border:3px solid transparent;transition:transform .3s,border-color .3s,box-shadow .3s;cursor:default}.card:hover{transform:translateY(-6px);box-shadow:0 8px 30px #0000001a}.card:nth-child(1){border-color:var(--pink)}.card:nth-child(2){border-color:var(--yellow)}.card:nth-child(3){border-color:var(--green)}.card:nth-child(4){border-color:var(--blue)}.card:nth-child(5){border-color:var(--purple)}.card:nth-child(6){border-color:var(--orange)}.card:hover:nth-child(1){background:#fff5f8}.card:hover:nth-child(2){background:#fffdf0}.card:hover:nth-child(3){background:#f0fdf8}.card:hover:nth-child(4){background:#f0f8fd}.card:hover:nth-child(5){background:#f8f0fd}.card:hover:nth-child(6){background:#fff8f0}.card-emoji{font-size:3rem;margin-bottom:.75rem;display:block}.card h3{font-size:1.3rem;color:var(--text);margin-bottom:.5rem}.card p{font-size:.95rem;color:#636e72;line-height:1.6}.steps{display:flex;flex-direction:column;gap:2rem;max-width:700px;margin:0 auto}.step{display:flex;align-items:flex-start;gap:1.25rem;background:var(--card-bg);border-radius:1rem;padding:1.5rem;box-shadow:0 2px 12px #0000000d;transition:transform .2s}.step:hover{transform:translate(6px)}.step-number{flex-shrink:0;width:50px;height:50px;border-radius:50%;display:grid;place-items:center;font-family:"Baloo 2",cursive;font-size:1.5rem;font-weight:800;color:#fff}.step:nth-child(1) .step-number{background:var(--pink)}.step:nth-child(2) .step-number{background:var(--yellow);color:var(--text)}.step:nth-child(3) .step-number{background:var(--green)}.step:nth-child(4) .step-number{background:var(--blue)}.step:nth-child(5) .step-number{background:var(--purple)}.step-content h3{font-size:1.15rem;margin-bottom:.25rem}.step-content p{color:#636e72;font-size:.95rem}.jar-container{text-align:center;max-width:500px;margin:0 auto}.jar-display{position:relative;width:200px;height:280px;margin:0 auto 1.5rem}.jar-body{width:180px;height:240px;border:4px solid var(--purple);border-radius:0 0 40px 40px;margin:0 auto;position:relative;overflow:hidden;background:#9b5de50d}.jar-lid{width:200px;height:30px;background:var(--purple);border-radius:8px 8px 0 0;margin:0 auto;position:relative;z-index:2}.jar-notes{position:absolute;bottom:0;left:0;right:0;display:flex;flex-wrap:wrap;justify-content:center;gap:4px;padding:8px;transition:height .5s ease}.jar-note{width:24px;height:24px;border-radius:4px;display:grid;place-items:center;font-size:.7rem;transform:rotate(var(--rot))}.jar-note:nth-child(6n+1){background:#ffecf0;--rot: -8deg}.jar-note:nth-child(6n+2){background:#fff4d6;--rot: 5deg}.jar-note:nth-child(6n+3){background:#d4f5ea;--rot: -3deg}.jar-note:nth-child(6n+4){background:#d6eef8;--rot: 7deg}.jar-note:nth-child(6n+5){background:#edd6ff;--rot: -6deg}.jar-note:nth-child(6n+6){background:#ffe8cc;--rot: 4deg}.jar-count{font-family:"Baloo 2",cursive;font-size:1.2rem;color:var(--purple);margin-bottom:1rem}.jar-form{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap;margin-bottom:.5rem}.jar-form input{padding:.75rem 1rem;border:3px solid #ddd;border-radius:12px;font-size:1rem;font-family:Nunito,sans-serif;width:280px;transition:border-color .2s}.jar-form input:focus{outline:none;border-color:var(--purple)}.jar-form button{padding:.75rem 1.5rem;background:var(--purple);color:#fff;border:none;border-radius:12px;font-size:1rem;font-family:"Baloo 2",cursive;font-weight:700;cursor:pointer;transition:transform .15s,background .2s}.jar-form button:hover{background:#8144c4;transform:scale(1.05)}.jar-hint{font-size:.85rem;color:#b2bec3;margin-top:.5rem}.quote-card{background:linear-gradient(135deg,#f8f0fd,#fff0f5);border-radius:1.5rem;padding:2.5rem 2rem;text-align:center;max-width:600px;margin:0 auto;position:relative;min-height:180px;display:flex;flex-direction:column;justify-content:center;align-items:center}.quote-text{font-family:"Baloo 2",cursive;font-size:1.4rem;color:var(--text);margin-bottom:1rem;line-height:1.5}.quote-author{font-size:.95rem;color:var(--purple);font-weight:600}.quote-nav{display:flex;justify-content:center;gap:1rem;margin-top:1.5rem}.quote-nav button{width:42px;height:42px;border-radius:50%;border:2px solid var(--purple);background:#fff;color:var(--purple);font-size:1.2rem;cursor:pointer;transition:all .2s;display:grid;place-items:center}.quote-nav button:hover{background:var(--purple);color:#fff}.quote-dots{display:flex;justify-content:center;gap:.5rem;margin-top:1rem}.quote-dot{width:10px;height:10px;border-radius:50%;background:#ddd;border:none;cursor:pointer;transition:background .2s,transform .2s}.quote-dot.active{background:var(--purple);transform:scale(1.3)}.pledge-wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;margin-bottom:2rem}.pledge-sticky{padding:1.25rem;border-radius:4px;font-size:.95rem;line-height:1.5;min-height:100px;box-shadow:2px 3px 8px #00000014;transform:rotate(var(--rot, 0deg));transition:transform .3s;position:relative}.pledge-sticky:hover{transform:rotate(0) scale(1.05);z-index:2}.pledge-sticky:nth-child(5n+1){background:#ffecf0;--rot: -2deg}.pledge-sticky:nth-child(5n+2){background:#fff4d6;--rot: 3deg}.pledge-sticky:nth-child(5n+3){background:#d4f5ea;--rot: -1deg}.pledge-sticky:nth-child(5n+4){background:#d6eef8;--rot: 2deg}.pledge-sticky:nth-child(5n+5){background:#edd6ff;--rot: -3deg}.pledge-author{display:block;margin-top:.75rem;font-size:.8rem;font-weight:700;color:#0006}.pledge-form{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center}.pledge-form input{padding:.6rem 1rem;border:3px solid #ddd;border-radius:10px;font-size:.95rem;font-family:Nunito,sans-serif;flex:1;min-width:200px;max-width:400px}.pledge-form input:focus{outline:none;border-color:var(--green)}.pledge-form button{padding:.6rem 1.5rem;background:var(--green);color:#fff;border:none;border-radius:10px;font-family:"Baloo 2",cursive;font-weight:700;font-size:1rem;cursor:pointer;transition:transform .15s}.pledge-form button:hover{transform:scale(1.05)}footer{position:relative;z-index:1;text-align:center;padding:3rem 1.5rem;background:linear-gradient(135deg,#2d3436,#636e72);color:#fff;margin-top:2rem}footer h3{font-size:1.5rem;margin-bottom:.5rem;color:var(--yellow)}footer p{color:#ffffffb3;max-width:500px;margin:0 auto 1rem}footer .footer-heart{font-size:2rem;display:block;margin-bottom:.5rem}footer small{color:#fff6}.confetti-container{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1000}.confetti-piece{position:absolute;width:10px;height:10px;border-radius:2px;animation:confetti-fall 1.5s ease-out forwards}@keyframes confetti-fall{0%{opacity:1;transform:translateY(0) rotate(0) scale(1)}to{opacity:0;transform:translateY(100vh) rotate(720deg) scale(.5)}}@media(max-width:600px){nav{padding:.75rem 1rem;flex-direction:column}.nav-links{gap:.5rem;justify-content:center}.hero{padding:3rem 1rem 2.5rem}.section{padding:2.5rem 1rem}.step{flex-direction:column;align-items:center;text-align:center}.jar-form input{width:100%}}
