@import "https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600;700&family=Kalam:wght@400;700&family=Nunito:wght@400;600;700;800;900&display=swap";
:root{--ink:#24072e;--pink:#fb3995;--purple:#aa58d7;--cream:#fffcf5;--mint:#d7faf0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{color:var(--ink);background:var(--cream);margin:0;font-family:Nunito,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline-offset:5px;outline:3px solid #8241bd}.wrap{max-width:1240px;margin:auto;padding-left:36px;padding-right:36px}.header{z-index:2;justify-content:space-between;align-items:center;padding-top:20px;display:flex;position:relative}.brand img{mix-blend-mode:multiply;border-radius:50%;width:225px;display:block}.header nav{align-items:center;gap:34px;font-size:15px;font-weight:900;display:flex}.button{border:2px solid var(--pink);background:var(--pink);color:#fff;border-radius:50px;justify-content:center;align-items:center;gap:20px;padding:15px 29px;font-size:20px;font-weight:900;transition:transform .2s,box-shadow .2s;display:inline-flex}.button:hover{transform:translateY(-3px);box-shadow:0 7px #f7b7d4}.button.small{padding:12px 25px;font-size:16px}.button.outline{border-color:var(--ink);color:var(--ink);background:0 0}.top-drip{background:#ffacd9;border-radius:30% 30% 50% 40%;width:135px;height:170px;position:absolute;top:-50px;left:-30px;transform:rotate(20deg)}.menu-toggle{display:none}.hero{grid-template-columns:1.08fr 1fr;align-items:center;margin-top:-38px;display:grid;position:relative}.hero-copy{z-index:1;margin-right:-55px;padding-top:48px;position:relative}.eyebrow{text-transform:uppercase;letter-spacing:4px;margin-bottom:32px;font-size:13px;font-weight:900}.eyebrow:after{content:"";background:var(--pink);border-radius:50%;width:90px;height:4px;margin-top:8px;display:block;transform:rotate(-3deg)}h1,h2,h3,.handwritten,.sticker,.sense strong{font-family:Fredoka,sans-serif}h1{letter-spacing:-2px;margin:0 0 22px;font-size:clamp(42px,5.8vw,77px);font-weight:700;line-height:1.04}h1 span,h2 span{color:var(--purple)}.handwritten{margin:18px 0 26px;font-family:Kalam,cursive;font-size:25px}.actions{flex-wrap:wrap;gap:16px;display:flex}.hero-picture{height:610px;position:relative}.hero-picture>img{object-fit:cover;border-radius:46% 49% 24% 28%/20% 26% 38% 30%;width:100%;height:100%}.sticker{text-align:center;background:#ffb7e8;border:4px solid #fff;border-radius:50%;width:128px;height:128px;padding:17px 0;font-size:24px;font-weight:600;line-height:1.1;position:absolute;top:65px;right:10px;transform:rotate(-12deg)}.heart{color:var(--purple);font-family:Kalam,cursive;font-size:85px;position:absolute;bottom:4px;right:0}.star{color:#f4cd5d;text-align:right;margin-right:65px;font-size:70px;display:block}.senses{background:var(--mint);clip-path:polygon(0 7%,5% 0,16% 8%,26% 0,39% 8%,51% 2%,64% 10%,78% 0,90% 8%,100% 2%,100% 90%,91% 100%,80% 92%,68% 100%,53% 92%,41% 100%,29% 92%,17% 100%,6% 91%,0 100%);margin:0 0 45px;padding:25px 0}.sense-row{justify-content:space-around;align-items:center;display:flex}.sense-pair{display:contents}.sense{border-radius:43% 57% 39% 61%;flex-direction:column;justify-content:center;align-items:center;width:175px;height:127px;display:flex;transform:rotate(-5deg)}.sense:nth-child(2n){transform:rotate(6deg)}.sense>span{font-size:47px;line-height:1}.sense strong{font-family:Kalam,cursive;font-size:29px}.pink{background:#ffb2df}.yellow{background:#ffeb9d}.mint{background:#a1efcf}.purple{background:#deb0fa}.tiny-heart{color:#ff93ce;font-size:30px}.experience{text-align:center;padding-top:12px;padding-bottom:40px}.section-kicker{text-transform:uppercase;letter-spacing:3px;font-size:12px;font-weight:900}h2{letter-spacing:-1px;margin:12px 0;font-size:clamp(32px,4.3vw,55px);font-weight:700;line-height:1.08}.squiggle{color:#ef65a7;height:28px;margin-bottom:30px;font-size:55px;line-height:15px}.steps{grid-template-columns:repeat(3,1fr);gap:23px;display:grid}.step{text-align:left;background:#ffb9e0;border-radius:25px;transition:transform .2s;overflow:hidden}.step:hover{transform:rotate(-1deg)translateY(-5px)}.step>img{object-fit:cover;width:100%;height:275px;display:block}.step-caption{justify-content:space-between;align-items:center;padding:22px 22px 0;display:flex;position:relative}.step-caption:before{content:"";background:inherit;border-radius:50%;width:110%;height:25px;position:absolute;top:-13px;left:-5%}.step h3{margin:0;font-family:Kalam,cursive;font-size:28px;line-height:1.2}.step-caption>span{font-size:39px}.step p{margin:7px 22px 24px;font-size:14px;font-weight:700}.step-1,.step-1 .step-caption{background:#acf4e3}.step-2,.step-2 .step-caption{background:#ffea98}.step-0 .step-caption{background:#ffb9e0}.party{background:#ecd3fb;border-radius:30px;grid-template-columns:1.12fr 1fr;max-width:1168px;margin:0 auto 65px;padding:0;display:grid;position:relative;overflow:hidden}.party-copy{z-index:1;margin-right:-45px;padding:65px 0 50px 48px;position:relative}.party-copy h2{font-size:47px}.party-copy p{max-width:430px;margin:20px 0 25px;font-size:20px;line-height:1.4}.party-heart{color:#ef65a7;font-size:58px;position:absolute;top:24px;left:50%}.party-photo img{object-fit:cover;width:100%;height:100%}.party-photo{clip-path:ellipse(88% 90% at 89%)}.faq{max-width:1000px;padding-bottom:65px}.faq>h2,.faq>.section-kicker{text-align:center}.faq h2{margin-bottom:30px}.faq details{border-bottom:2px solid #ead9e9;padding:20px 8px}.faq summary{cursor:pointer;font-size:19px;font-weight:900}.faq details p{max-width:700px;line-height:1.7}footer{text-align:center;border-top:2px solid #f2e6ee;padding-top:30px;padding-bottom:35px}.footer-brand{font-family:Fredoka,sans-serif;font-size:28px;font-weight:700}.footer-brand span{color:var(--pink)}footer p{font-family:Kalam,cursive;font-size:20px}footer small{font-size:12px}dialog{background:var(--cream);color:var(--ink);border:0;border-radius:28px;width:calc(100% - 32px);max-width:540px;padding:40px;box-shadow:0 25px 90px #23072e44}dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#24072e88}dialog h2{font-size:39px}.close{background:0 0;border:0;font-size:24px;position:absolute;top:12px;right:16px}.notice{background:#f3e4fa;border-radius:16px;margin:22px 0;padding:20px}.notice p{margin:7px 0 0;line-height:1.5}@media (min-width:1500px){.hero-picture{height:650px}}@media (max-width:1000px){.header nav{gap:20px}.brand img{width:170px}.hero{margin-top:0}.hero-picture{height:510px}.hero-copy{margin-right:-40px}.button{padding:13px 22px;font-size:17px}.handwritten{font-size:21px}.party{margin-left:24px;margin-right:24px}.party-copy h2{font-size:38px}.step>img{height:230px}.step h3{font-size:23px}.sense{width:140px;height:110px}}@media (max-width:700px){.wrap{padding-left:22px;padding-right:22px}.header{padding-top:12px}.brand img{width:116px}.menu-toggle{border:2px solid var(--ink);background:0 0;border-radius:30px;padding:9px 16px;font-weight:900;display:block}.header nav{background:var(--cream);text-align:center;border-radius:24px;align-items:stretch;padding:25px;display:none;position:absolute;top:130px;left:18px;right:18px;box-shadow:0 12px 35px #24072e22}.header nav.open{flex-direction:column;display:flex}.hero{grid-template-columns:1fr;gap:24px}.hero-copy{margin:0;padding-top:25px}.eyebrow{letter-spacing:2.5px;margin-bottom:23px;font-size:10px}h1{letter-spacing:-1px;font-size:clamp(43px,10vw,68px)}.handwritten{margin:20px 0;font-size:21px}.actions{gap:10px}.actions .button{padding:13px 19px;font-size:16px}.star{font-size:45px;position:absolute;bottom:-36px;right:-40px}.hero-picture{width:100%;max-width:480px;height:420px;margin:auto}.sticker{width:100px;height:100px;padding:13px 0;font-size:20px;top:20px}.heart{font-size:65px}.senses{margin:20px 0;padding:25px 0}.sense-row{grid-template-columns:repeat(4,1fr);gap:8px;padding:0 12px;display:grid}.sense-pair{display:block}.sense{width:100%;height:92px}.sense>span{font-size:30px}.sense strong{font-size:21px}.tiny-heart{display:none}.experience{padding-top:18px}.section-kicker{letter-spacing:2px;font-size:10px}.experience h2{font-size:38px}.steps{grid-template-columns:1fr;gap:22px;max-width:430px;margin:auto}.step>img{height:290px}.step h3{font-size:30px}.party{grid-template-columns:1fr;margin:0 18px 45px;padding:0}.party-copy{margin:0;padding:40px 26px}.party-copy h2{font-size:40px}.party-copy p{font-size:18px}.party-photo{clip-path:none;height:270px}.party-photo img{object-position:center 65%}.faq h2{font-size:35px}.faq{padding-bottom:40px}dialog{padding:34px 24px}dialog h2{font-size:32px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}}
