:root{--pink:#e98da9;--rose:#ae627b;--brown:#64454d;--cream:#fff9f2;--mint:#d8eee0;--lav:#ede1f9;--line:#f3d6db}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--brown);font-family:'DM Sans',system-ui,sans-serif;background:#fffdfb}a{color:inherit;text-decoration:none}button,select{font:inherit}button{cursor:pointer}section{scroll-margin-top:90px}.announcement{text-align:center;padding:10px 12px;background:#f9dfe7;color:#91526a;font-size:12px;font-weight:700;letter-spacing:.05em}.nav{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,20px);background:#fffdf9;position:sticky;top:0;z-index:20;border-bottom:1px solid #f6e2e5}.brand,.footer-brand{font-family:Pacifico,cursive;font-size:20px;color:#a45d74}.brand span{color:#df7d9d}.nav nav{display:flex;gap:27px;font-size:13px;font-weight:700}.nav nav a:hover{color:#d97796}.pill{display:inline-flex;align-items:center;justify-content:center;border-radius:100px;padding:13px 22px;font-weight:700;font-size:13px;border:2px solid transparent;transition:transform .2s,box-shadow .2s}.pill:hover{transform:translateY(-2px);box-shadow:0 6px 20px #b7798a25}.nav-order,.primary{background:#dc819d;color:#fff}.outline{border-color:#dca2b3;color:#a35f76;background:#fffaf9}.mobile-nav{display:none;background:none;border:0;color:#a35f76;font-size:26px}.hero{min-height:570px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:30px;padding:65px max(8vw,24px);background:radial-gradient(circle at 76% 35%,#f8e1eb 0 18%,transparent 42%),linear-gradient(120deg,#fff9ef,#fff0f3)}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:800;color:#c47791}.hero h1{font-size:clamp(48px,6vw,88px);line-height:1.09;letter-spacing:-.055em;margin:22px 0;color:#7d4d5a}.hero h1 em{font-family:Pacifico,cursive;color:#e187a3;font-weight:400;letter-spacing:0;font-size:.85em}.hero p{max-width:475px;font-size:16px;line-height:1.8;color:#876e70}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.mini-note{margin-top:26px;font-size:12px;color:#aa8090}.hero-visual{height:410px;position:relative}.hero-pop{position:absolute;bottom:40px;width:180px;height:180px;border-radius:50%;box-shadow:inset -16px -16px 20px #ad7d7d23, inset 13px 16px 16px #fff7,0 15px 20px #bb8a9b30;animation:bob 4s ease-in-out infinite}.hero-pop:after{content:'';position:absolute;left:calc(50% - 6px);top:98%;height:175px;width:12px;background:white;border:1px solid #e7d5d4;border-radius:0 0 7px 7px;z-index:-1}.hero-pop span:after{content:'✿  ♡  ✧';position:absolute;top:62px;left:23px;font-size:25px;color:#fff8d9;letter-spacing:10px;transform:rotate(-20deg)}.pop-a{background:#f0a6b9;left:9%;top:88px;transform:rotate(-15deg)}.pop-b{background:#70493f;left:41%;top:24px;animation-delay:-1s;z-index:2}.pop-c{background:#e9dfbd;left:62%;top:127px;animation-delay:-2s}.hero-spark{position:absolute;font-size:40px;color:#e9a4b3}.s1{left:10%;top:12px}.s2{right:8%;top:25px}.s3{right:5%;bottom:5px}.hero-sticker{position:absolute;left:5%;bottom:0;background:#fff9f3;padding:18px 25px;transform:rotate(-10deg);border-radius:60% 40% 65% 40%;color:#b66d88;box-shadow:0 8px 30px #d69caa30}.marquee{background:#f9e4e7;text-align:center;padding:15px;color:#b8778e;font-weight:700;font-size:12px;letter-spacing:.12em;word-spacing:15px;overflow:hidden}.section{padding:86px max(6vw,22px)}.section-heading{text-align:center;margin-bottom:38px}.section-heading h2{font-size:clamp(31px,4vw,49px);letter-spacing:-.04em;margin:9px 0;color:#794d59}.section-heading h2 span{color:#e69bb3}.section-heading p{color:#9a7d82;font-size:14px}.builder-section{background:#fff9f8}.builder-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:1100px;margin:auto}.preview-card,.controls-card,.menu-card,.detail-card,.gallery-item,.order-box,.form-embed{border:1px solid var(--line);border-radius:26px;background:white;box-shadow:0 12px 32px #d7a2b012}.preview-card{padding:23px;display:flex;flex-direction:column}.preview-top{display:flex;justify-content:space-between;align-items:center;gap:10px;color:#b77b8e;font-size:11px;font-weight:800;letter-spacing:.09em}.surprise{border:1px solid #f2c7d5;background:#fff1f6;color:#ae617b;padding:9px 12px;border-radius:30px;font-size:12px;font-weight:700}.pop-stage{position:relative;display:grid;place-items:center;min-height:410px;background:radial-gradient(circle,#fff7ed 15%,#ffebf2 78%);border-radius:24px;margin:18px 0}.pop-stage svg{width:min(100%,340px);filter:drop-shadow(0 12px 15px #b98a9930);transition:transform .25s}.pop-stage.popping svg{transform:scale(1.07) rotate(3deg)}.float{position:absolute;font-size:25px;color:#db9aaf}.f1{left:13%;top:20%}.f2{right:14%;top:31%}.f3{left:22%;bottom:15%}.preview-caption{text-align:center;font-weight:700;color:#986c79;font-size:13px}.peek{display:flex;gap:8px;justify-content:center;margin-top:17px;font-size:12px;color:#956c7c}.controls-card{padding:25px}.control-block{padding:0 0 20px;margin-bottom:20px;border-bottom:1px dashed #edcfd5}.control-block h3{font-size:15px;margin:0 0 15px}.step{display:inline-grid;place-items:center;background:#fbe1e8;color:#ae6b81;width:29px;height:29px;border-radius:50%;font-size:11px;margin-right:7px}.choices{display:flex;flex-wrap:wrap;gap:8px}.choice{border:1px solid #f0d4dc;border-radius:12px;padding:11px 14px;background:#fffdfc;color:#815d68;font-size:12px;font-weight:700}.choice.active{background:#f9e0e8;border-color:#d9829e;box-shadow:inset 0 0 0 1px #d9829e}.hint{font-size:11px;color:#a68d92;margin:11px 0 0;line-height:1.6}.swatches{display:flex;gap:13px;flex-wrap:wrap}.swatch{display:grid;justify-items:center;gap:5px;background:none;border:0;font-size:10px;color:#8b6d75}.swatch-dot{width:34px;height:34px;border-radius:50%;border:3px solid #fff;outline:1px solid #e6c6ce;box-shadow:0 2px 5px #b9889620}.swatch.active .swatch-dot{outline:3px solid #d77d9d}.control-block select{width:100%;padding:13px;border:1px solid #ebcdd6;border-radius:12px;background:#fff9fb;color:#78525e}.total{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff1f5;padding:18px;border-radius:18px}.total div{display:flex;flex-direction:column;gap:3px}.total small{font-size:11px}.total strong{font-size:27px;color:#b76883}.total span{font-size:10px;color:#987a82}.total .pill{white-space:nowrap;padding:12px 15px}.status{font-size:12px;color:#7e9e85;margin:8px 0 0}.menu-section{background:#fff}.menu-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:25px;max-width:1000px;margin:auto}.menu-card{padding:25px;background:#fff5f7}.menu-heading{font-family:Pacifico,cursive;font-size:24px;color:#ad6b83;margin-bottom:15px}.menu-heading span{float:right}.price-list>div{display:flex;justify-content:space-between;border-bottom:1px dashed #e6b8c7;padding:12px 4px;font-size:14px}.price-list b{color:#b56a83}.menu-details{display:grid;gap:13px}.detail-card{padding:19px 23px}.detail-icon{font-size:23px}.detail-card h3{font-size:17px;margin:7px 0}.detail-card p{font-size:13px;line-height:1.7;color:#967a81;margin:0}.gallery-section{background:#fef8f3}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1020px;margin:auto}.gallery-item{overflow:hidden;padding-bottom:16px;text-align:center}.gallery-illustration{height:225px;display:grid;place-items:center;font-size:92px;position:relative}.gallery-illustration span{position:absolute;font-size:35px;right:19%;top:17%;color:#fff}.g-pink{background:#f8d9e5}.g-choco{background:#e8d5c7}.g-lavender{background:#e9def6}.gallery-item h3{margin:16px 0 5px;font-size:16px}.gallery-item p,.gallery-note{font-size:12px;color:#a1898f}.gallery-note{text-align:center;margin-top:19px}.cause-section{padding:58px 20px;background:linear-gradient(120deg,#e7f3e8,#fbeaf0)}.cause-inner{max-width:900px;margin:auto;display:flex;align-items:center;gap:35px}.cause-heart{font-size:100px;color:#d98fa8}.cause-inner h2{font-size:32px;margin:7px 0}.cause-inner p{line-height:1.8;color:#886e76;font-size:14px}.order-section{background:#fffdfb}.order-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:25px;max-width:1100px;margin:auto}.order-box{padding:30px;text-align:center}.order-box h3{font-family:Pacifico,cursive;color:#a96880;font-size:26px}.order-box p{font-size:13px;line-height:1.75;color:#92777f}.order-box .pill{margin:14px auto}.qr{display:block;width:170px;max-width:90%;margin:25px auto 12px;border:9px solid #fff4f6;border-radius:14px;image-rendering:auto}.order-box .smallprint{font-size:11px}.form-embed{overflow:hidden;min-height:590px}.form-embed iframe{width:100%;height:630px;border:0}footer{background:#fae7ed;text-align:center;padding:40px 20px;color:#9d687b}footer p{font-size:13px}footer div a{font-size:13px;text-decoration:underline}footer small{display:block;margin-top:25px;font-size:11px}@keyframes bob{0%,100%{translate:0 0}50%{translate:0 -13px}}@media(max-width:850px){.builder-grid,.menu-layout,.order-grid{grid-template-columns:1fr}.hero{grid-template-columns:1fr;padding-top:60px}.hero-visual{height:350px;max-width:470px;width:100%;margin:auto}.hero-pop{width:145px;height:145px}.hero-pop:after{height:130px}.gallery-illustration{height:160px}.gallery-illustration{font-size:60px}.nav nav{gap:12px}.nav-order{display:none}}@media(max-width:560px){.nav{height:65px}.brand{font-size:16px}.mobile-nav{display:block}.nav nav{display:none;position:absolute;top:65px;left:0;right:0;background:#fffdf9;padding:20px;box-shadow:0 10px 20px #a47c8122;flex-direction:column}.nav nav.open{display:flex}.hero{padding:40px 22px}.hero h1{font-size:49px}.hero-visual{height:315px}.hero-pop{width:128px;height:128px}.pop-a{left:5%}.pop-b{left:33%}.pop-c{left:60%}.section{padding:65px 16px}.controls-card,.preview-card{padding:17px}.pop-stage{min-height:300px}.pop-stage svg{width:280px}.total{flex-direction:column;align-items:stretch}.gallery-grid{grid-template-columns:1fr}.gallery-illustration{height:180px}.cause-inner{gap:15px}.cause-heart{font-size:50px}.cause-inner h2{font-size:24px}.order-box{padding:20px}}
/* V2: flavor showcase, arcade and native order */
[hidden]{display:none!important}
.flavor-showcase{max-width:1120px;margin:0 auto 24px}.popular-head{text-align:center;margin-bottom:18px}.popular-head h3{font-family:Pacifico,cursive;font-size:32px;color:#a45c75;margin:8px 0}.featured-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.featured-grid article{background:#fff;border:1px solid #f3d7df;border-radius:23px;padding:22px 14px;text-align:center;box-shadow:0 7px 24px #ae6b8420;display:flex;flex-direction:column;gap:9px;align-items:center}.featured-grid article>span{font-size:32px}.featured-grid b{font-size:15px;color:#804c60}.featured-grid small{color:#9a7581}.season-banner{margin-top:18px;border:2px dashed #d4a7a8;border-radius:22px;background:linear-gradient(105deg,#fff1d5,#fff4ef,#e9f7e8);padding:19px;text-align:center;display:flex;gap:5px;flex-direction:column;color:#875c4d}.season-banner span{font-size:11px;letter-spacing:.12em;font-weight:700}.season-banner strong{font-family:Pacifico,cursive;font-size:28px}.season-banner small{font-size:12px}.flavor-directory{max-width:1120px;margin:0 auto 30px;padding:20px 24px;background:#fffdfb;border:1px solid #eed6d8;border-radius:22px}.flavor-directory summary{cursor:pointer;color:#9e5a74;font-weight:800}.directory-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:14px}.directory-grid h4{margin:10px 0 5px;color:#9d5c76}.directory-grid p{font-size:14px;line-height:1.8;color:#6e5a60}.arcade-section{background:linear-gradient(180deg,#fff9ec,#fff0f5)}.arcade-wrap{max-width:1120px;margin:auto;display:grid;grid-template-columns:minmax(0,1.7fr) minmax(250px,1fr);gap:20px}.arcade-card,.rewards-card{background:#fff;border:1px solid #f1d9df;border-radius:25px;padding:20px;box-shadow:0 12px 35px #ac75811a}.arcade-stats{display:flex;justify-content:space-around;gap:8px;flex-wrap:wrap;padding-bottom:14px;color:#a16b7d;font-size:13px}.arcade-stats strong{display:block;text-align:center;font-size:23px;color:#8e4d67}.game-field{position:relative;overflow:hidden;height:420px;border-radius:20px;background:repeating-linear-gradient(90deg,#fff4f6 0,#fff4f6 calc(25% - 1px),#f2dce2 calc(25% - 1px),#f2dce2 25%);border:2px solid #efcfd7;touch-action:manipulation}.game-field:before{content:'✧  ♡  ✿  ✧';position:absolute;top:16px;left:0;width:100%;text-align:center;color:#edc5d2;font-size:24px;pointer-events:none}.game-intro{position:absolute;z-index:5;inset:0;background:#fff9f0ed;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:24px;color:#8c5670}.game-intro>span{font-size:48px}.game-intro h3{font-family:Pacifico,cursive;font-size:31px;margin:10px 0}.game-intro p{max-width:330px;line-height:1.6}.fall-item{position:absolute;z-index:2;width:58px;height:58px;border-radius:50%;background:#fff;border:2px solid #eccbd7;box-shadow:0 4px 12px #95627522;font-size:30px;cursor:pointer;touch-action:manipulation;display:grid;place-items:center;transition:background .15s}.fall-item:active{background:#fff0cf;scale:1.12}.fall-item.burnt{background:#493e43;border-color:#796369}.fall-item.coin{background:#fff2c6;border-color:#e8c26e}.game-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-top:15px}.game-actions .pill{padding:10px 17px}.game-actions span{color:#9e667d;font-size:12px}.rewards-card{text-align:center;align-self:start}.reward-badge{font-size:55px}.rewards-card h3{font-family:Pacifico,cursive;color:#a45c75;font-size:29px;margin:8px}.rewards-card p{line-height:1.65;color:#795f69}.progress-track{background:#f9e7ea;border-radius:100px;height:15px;overflow:hidden;margin-top:20px}.progress-track>div{height:100%;background:linear-gradient(90deg,#f3c56c,#eaa6b6);width:0;transition:width .3s}.rewards-card .hint{font-size:11px;text-align:left;margin-top:20px}.avatar-callout{border-top:1px dashed #e9c6d2;padding-top:20px;margin-top:20px;font-size:13px}.avatar-callout a{color:#a35d7c}.order-native{grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr)}.order-native .order-box{display:flex;flex-direction:column;gap:13px}.order-native .order-box h3{margin-bottom:5px}.order-native label:not(.peek){display:flex;flex-direction:column;gap:7px;font-weight:700;color:#8e5269;font-size:13px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.order-native input:not([type=checkbox]),.order-native select,.order-native textarea{width:100%;min-width:0;padding:13px;border-radius:12px;border:1px solid #e6cbd4;background:#fffdfd;color:#5f4953;font:inherit;font-weight:400}.order-native input:focus,.order-native select:focus,.order-native textarea:focus{outline:2px solid #e9a8c1}.order-native .peek{display:flex;align-items:start;gap:9px;font-size:13px;color:#745760}.order-estimate{display:flex;align-items:center;justify-content:space-between;background:#fff2d9;border-radius:15px;padding:15px;color:#815468}.order-estimate strong{font-size:24px}.form-status{font-size:13px;color:#91506a;min-height:20px}.order-side-card{background:#fff;border:1px solid #f1d9df;border-radius:24px;padding:26px;position:sticky;top:20px}.order-side-card h3{font-family:Pacifico,cursive;color:#9f5d78;font-size:26px}.order-side-card p{font-size:14px;line-height:1.8}.order-side-card .qr{max-width:190px;display:block;margin:20px auto}.pill:disabled{opacity:.5;cursor:not-allowed}.order-native .pill{justify-content:center;text-align:center}
@media(max-width:850px){.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.arcade-wrap,.order-native{grid-template-columns:1fr}.directory-grid{grid-template-columns:1fr}.order-side-card{position:static}}
@media(max-width:520px){.form-row{grid-template-columns:1fr}.featured-grid{gap:8px}.featured-grid article{padding:16px 8px}.featured-grid b{font-size:13px}.game-field{height:390px}.arcade-card,.rewards-card{padding:13px}.game-actions .pill{padding:8px 13px}.order-native .order-box{padding:20px}}
