:root{--pink: #ff6b9d;--pink-light: #ffc2d6;--pink-dark: #d63384;--cream: #fff8f0;--cream-dark: #fff0e0;--chocolate: #5d4037;--chocolate-light: #8d6e63;--sprinkle-yellow: #ffe082;--sprinkle-blue: #81d4fa;--sprinkle-green: #b2dfdb;--sprinkle-purple: #ce93d8;--white: #ffffff;--shadow-sm: 0 4px 12px rgba(93, 64, 55, .08);--shadow: 0 12px 32px rgba(93, 64, 55, .12);--shadow-lg: 0 20px 48px rgba(93, 64, 55, .18);--radius: 24px;--radius-sm: 16px;--max-width: 1200px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Nunito,sans-serif;background:var(--cream);color:var(--chocolate);line-height:1.65;overflow-x:hidden;-webkit-font-smoothing:antialiased}h1,h2,h3,.brand{font-family:Fredoka,sans-serif;font-weight:700;line-height:1.15}.app{position:relative;min-height:100vh}.navbar{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1rem 5vw;background:#fff8f0f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:3px dashed var(--pink-light)}.brand{font-size:1.7rem;font-weight:700;color:var(--pink-dark);text-decoration:none;display:flex;align-items:center;gap:.5rem;transition:transform .2s}.brand:hover{transform:scale(1.03)}.nav-links{display:flex;gap:2rem;list-style:none}.nav-links a{color:var(--chocolate);text-decoration:none;font-weight:700;font-size:1rem;padding:.4rem .8rem;border-radius:999px;transition:color .2s,background .2s}.nav-links a:hover{color:var(--pink-dark);background:var(--pink-light)}.hero{position:relative;text-align:center;padding:8rem 5vw 7rem;background:radial-gradient(circle at 15% 20%,rgba(255,224,130,.35) 0%,transparent 35%),radial-gradient(circle at 85% 30%,rgba(129,212,250,.3) 0%,transparent 35%),radial-gradient(circle at 50% 40%,var(--pink-light) 0%,var(--cream) 55%)}.hero-content{max-width:780px;margin:0 auto}.hero h1{font-size:clamp(2.8rem,7vw,5.2rem);color:var(--pink-dark);margin-bottom:1.2rem}.hero p{font-size:clamp(1.1rem,2.4vw,1.45rem);max-width:600px;margin:0 auto 2.2rem;color:var(--chocolate-light)}.hero-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem 2rem;border-radius:999px;font-weight:800;font-size:1rem;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease,background .15s;border:none;cursor:pointer;box-shadow:var(--shadow-sm)}.btn:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.btn-primary{background:linear-gradient(135deg,var(--pink) 0%,var(--pink-dark) 100%);color:var(--white)}.btn-primary:hover{background:linear-gradient(135deg,var(--pink-dark) 0%,var(--pink) 100%)}.btn-secondary{background:var(--white);color:var(--pink-dark);border:2px solid var(--pink-light)}.btn-secondary:hover{background:var(--pink-light)}.section{padding:5.5rem 5vw}.section-header{text-align:center;max-width:650px;margin:0 auto 3.5rem}.section-title{font-size:clamp(2rem,5vw,3rem);color:var(--pink-dark);margin-bottom:.6rem}.section-intro{font-size:1.15rem;color:var(--chocolate-light)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:2rem;max-width:var(--max-width);margin:0 auto}.card{background:var(--white);border-radius:var(--radius);padding:2rem 1.6rem;box-shadow:var(--shadow);transition:transform .25s ease,box-shadow .25s ease;text-align:center;border:2px solid var(--pink-light);display:flex;flex-direction:column;align-items:center}.card:hover{transform:translateY(-8px) rotate(-1deg);box-shadow:var(--shadow-lg)}.card-icon{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2.4rem;background:var(--cream-dark);margin-bottom:1.2rem;box-shadow:inset 0 0 0 4px var(--pink-light)}.card h3{color:var(--pink-dark);font-size:1.35rem;margin-bottom:.5rem}.card p{color:var(--chocolate-light);margin-bottom:1.2rem;flex-grow:1}.price{display:inline-block;font-size:1.3rem;font-weight:800;color:var(--white);background:var(--pink);padding:.5rem 1.2rem;border-radius:999px;box-shadow:var(--shadow-sm)}.menu-card:nth-child(4n+1) .card-icon{background:#fff3e0;box-shadow:inset 0 0 0 4px #ffe0b2}.menu-card:nth-child(4n+2) .card-icon{background:#fce4ec;box-shadow:inset 0 0 0 4px #f8bbd0}.menu-card:nth-child(4n+3) .card-icon{background:#e3f2fd;box-shadow:inset 0 0 0 4px #bbdefb}.menu-card:nth-child(4n+4) .card-icon{background:#f3e5f5;box-shadow:inset 0 0 0 4px #e1bee7}.parties{background:linear-gradient(180deg,var(--cream) 0%,var(--cream-dark) 100%)}.party-card .card-icon{background:var(--sprinkle-yellow);box-shadow:inset 0 0 0 4px #ffca28}.testimonials{background:var(--pink-light)}.testimonial-card{background:var(--white);border-radius:var(--radius);padding:2rem;box-shadow:var(--shadow);text-align:left;border:2px solid rgba(255,255,255,.6);position:relative}.testimonial-card:before{content:"“";position:absolute;top:-.2rem;left:1rem;font-size:5rem;color:var(--pink-light);font-family:Fredoka,sans-serif;line-height:1}.testimonial-card p{font-size:1.1rem;font-style:italic;color:var(--chocolate);margin-bottom:1.2rem;position:relative;z-index:1}.testimonial-card footer{font-weight:800;color:var(--pink-dark)}.contact{text-align:center;background:var(--cream)}.contact-details{margin:1.5rem 0 2rem;color:var(--chocolate-light);font-size:1.1rem}.newsletter{display:flex;gap:.7rem;justify-content:center;flex-wrap:wrap;max-width:520px;margin:0 auto}.newsletter input{flex:1 1 240px;padding:.95rem 1.4rem;border-radius:999px;border:2px solid var(--pink-light);font-size:1rem;outline:none;background:var(--white);transition:border-color .2s}.newsletter input:focus{border-color:var(--pink)}.footer{background:var(--chocolate);color:var(--white);text-align:center;padding:2.2rem 5vw}.footer a{color:var(--pink-light);text-decoration:none}.sprinkles{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:40}.sprinkle{position:absolute;font-size:1.6rem;opacity:.5;animation:float 7s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-30px) rotate(20deg)}}.loading,.empty{text-align:center;padding:2rem;font-weight:700;color:var(--pink-dark);grid-column:1 / -1}@media (max-width: 768px){.nav-links{display:none}.hero{padding:6rem 5vw 5rem}.section{padding:4rem 5vw}.grid{grid-template-columns:1fr}}
