:root{--cream:#fff9ef;--paper:#fffdfa;--ink:#45314f;--pink:#df5684;--purple:#694787;--mint:#d9edda;--line:#e6dfd6;--font:'Noto Sans Thai',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--purple);outline-offset:6px}button{cursor:pointer}.wrap{max-width:1240px;margin:auto;padding-inline:42px}.skip{position:fixed;top:-80px;left:15px;z-index:9;padding:12px;background:#fff}.skip:focus{top:10px}.header{max-width:1320px;padding:28px 42px 20px;margin:auto;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;gap:9px;align-items:center;font:600 26px/.8 'Fredoka',sans-serif;letter-spacing:-.7px}.brand-flower{font-size:49px;color:var(--pink);line-height:1}.brand-bottom{display:block;margin-top:5px}.brand-dot{color:var(--pink)}nav{display:flex;align-items:center;gap:35px;font-size:13px;font-weight:600}.nav-play{border:1px solid #dcd0d1;padding:11px 21px;border-radius:30px;display:flex;gap:30px;align-items:center}.nav-play:hover{background:#ffe4e9}.hero{display:grid;grid-template-columns:1fr 1.05fr;gap:12px;align-items:center;min-height:650px;padding-top:45px;padding-bottom:76px}.eyebrow{font:600 10px/1.5 'Fredoka',sans-serif;letter-spacing:2px;margin:0 0 23px}.hero .eyebrow{display:flex;align-items:center;gap:9px}.spark{font-size:21px;color:var(--pink)}.hero-name{font:500 clamp(38px,5vw,68px)/1.04 'Fredoka',sans-serif;letter-spacing:-1.8px;margin:0 0 12px;color:var(--pink)}h1{font-size:clamp(25px,3.1vw,40px);font-weight:800;line-height:1.6;letter-spacing:-1px;margin:0 0 26px}.highlight{position:relative;display:inline-block;margin-left:4px;color:var(--pink)}.highlight svg{position:absolute;bottom:-3px;left:0;width:100%;height:12px;fill:none;stroke:var(--pink);stroke-width:3;stroke-linecap:round}.hero-description{font-size:14px;line-height:2;color:#817281;margin:0 0 30px}.hero-actions{display:flex;align-items:center;gap:24px}.button{display:inline-flex;align-items:center;justify-content:center;gap:35px;min-height:53px;padding:13px 25px;border-radius:32px;font-size:14px;font-weight:700;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-3px);box-shadow:0 8px 20px #60404619}.button-pink{background:var(--pink);color:#fff;box-shadow:0 5px 0 #b83d6220}.button span{font-size:22px;line-height:1}.text-link{font-size:12px;display:flex;gap:13px;align-items:center}.hero-note{display:flex;align-items:center;gap:12px;font-size:10px;color:#897b83;margin-top:25px}.hero-note b{padding:0 7px}.tiny-candies{display:flex}.tiny-candies i{width:21px;height:21px;border:2px solid var(--cream);border-radius:50%;background:#ffa5be;margin-left:-5px}.tiny-candies i:nth-child(2){background:#b9ddc3}.tiny-candies i:nth-child(3){background:#ffcf6e}.hero-art{height:495px;position:relative;display:flex;align-items:center;isolation:isolate;margin-right:-28px}.art-backdrop{position:absolute;inset:18px -12px 12px 24px;border-radius:48% 49% 40% 45%;background:#f4d9dd;transform:rotate(9deg);z-index:-1}.hero-art>img{width:100%;height:450px;object-fit:cover;border-radius:180px 180px 110px 110px;box-shadow:0 22px 45px #bb8a8620}.floating-flower{position:absolute;font-size:79px;line-height:1;color:#e47291;top:0;left:4%;transform:rotate(-15deg);text-shadow:2px 4px #fffaec}.sweet-sticker{position:absolute;right:-4px;top:21px;background:#fff5d5;border:5px solid var(--cream);box-shadow:0 4px 0 #dabcb951;border-radius:50%;width:113px;height:113px;padding:16px 10px;text-align:center;transform:rotate(12deg);font:400 16px/1.1 'Fredoka',sans-serif}.sweet-sticker strong{font-size:27px;font-weight:500;color:var(--pink)}.sweet-sticker>span{display:block;font-size:15px;margin-top:4px;color:#bc864e}.art-caption{position:absolute;bottom:6px;left:12%;right:4%;font:500 9px 'Fredoka',sans-serif;letter-spacing:1.5px;display:flex;gap:8px;align-items:center}.art-caption>span:last-child{margin-left:auto;letter-spacing:1px}.caption-dot{width:6px;height:6px;background:var(--pink);border-radius:50%}.ribbon{overflow:hidden;background:#f4b6c7;color:#805069;border-top:1px solid #efaabc;border-bottom:1px solid #efaabc;transform:rotate(-1.6deg);width:100%;padding:17px 0}.ribbon>div{display:flex;justify-content:space-around;align-items:center;gap:35px;white-space:nowrap;font:500 23px 'Fredoka',sans-serif;letter-spacing:2px}.ribbon span{font-size:20px;color:#c46587}.world{padding-top:105px;padding-bottom:100px}.section-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:42px}.section-intro .eyebrow{margin-bottom:15px}h2{font-size:35px;line-height:1.55;margin:0;letter-spacing:-.8px;font-weight:800}.pink{color:var(--pink)}.section-intro>p{font-size:13px;color:#827582;line-height:2;margin:0 0 8px}.world-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.world-card{border:1px solid #e8dfd5;border-radius:20px;overflow:hidden;background:#fffefa}.card-art{height:192px;position:relative;display:grid;place-items:center;overflow:hidden}.strawberry .card-art{background:#ffe0e9}.mint .card-art{background:#dcebdd}.vanilla .card-art{background:#f9e9be}.card-art:before{content:'';position:absolute;width:155px;height:155px;border:1px solid #fff8;border-radius:50%}.card-art:after{content:'';position:absolute;width:210px;height:210px;border:1px solid #fff6;border-radius:50%}.orbit{position:absolute;top:21px;left:23px;font:400 11px 'Fredoka';opacity:.6}.small-star{position:absolute;right:20%;top:25%;color:#fff;font-size:32px;transform:rotate(12deg)}.big-candy{display:block;width:84px;height:84px;transform:rotate(-17deg);position:relative;z-index:1;box-shadow:inset 0 -8px 12px #0001,0 17px 22px #68422c24}.card-body{padding:27px 28px 30px}.micro-label{font:500 9px/1.5 'Fredoka';letter-spacing:1.4px;color:#88778b}.card-body h3{font-size:20px;margin:10px 0}.card-body p{font-size:13px;line-height:1.9;color:#8a7985;margin:0}.play-section{background:#f0ede7;border-block:1px solid #e6dfd6;padding:80px 0 86px}.play-inner{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:85px}.pill{display:inline-block;padding:7px 12px;border-radius:30px;background:#fff8eb;font:500 9px/1.4 'Fredoka';letter-spacing:1.4px;margin-bottom:22px}.play-copy h2{font-size:44px;margin-bottom:20px}.play-copy>p{font-size:14px;line-height:2;color:#847681}.quick-rules{list-style:none;padding:0;margin:25px 0;font-size:13px;line-height:2.5}.quick-rules li{display:flex;align-items:center;gap:13px}.quick-rules span{font:500 10px 'Fredoka';color:var(--pink);border:1px solid #d5c5cc;border-radius:50%;width:24px;height:24px;display:grid;place-items:center}.play-copy p.demo-note{font-size:10px;line-height:1.8;color:#857d81}.handwritten{font:400 18px 'Fredoka';color:#c77d98;transform:rotate(-4deg);margin-top:33px}.handwritten span{font-size:45px;margin-left:15px}.game-shell{background:#fffdfa;border:1px solid #fff;border-radius:27px;padding:24px;box-shadow:0 15px 0 #ded5d52a,0 24px 50px #64506412;max-width:470px;width:100%;position:relative}.game-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.game-heading h3{font-size:17px;margin:5px 0 15px;font-weight:700}.game-heading h3 span{color:var(--pink);margin-left:5px}.icon-button{width:36px;height:36px;background:#f6eef1;border:0;border-radius:50%;font-size:26px;color:#a16b89}.game-stats{display:flex;gap:12px;margin:8px 0 10px}.game-stats>div{width:50%;background:#f9f2e8;border-radius:10px;padding:10px 14px;display:flex;align-items:baseline;gap:7px}.game-stats>div:last-child{background:#eef4e8}.game-stats span{font-size:10px;margin-right:auto;color:#847780}.game-stats strong{font:500 26px 'Fredoka';color:#714e76}.game-stats small{font-size:9px;color:#a495a2}.progress-track{height:5px;border-radius:5px;background:#f3e3e8;overflow:hidden;margin-bottom:15px}.progress-track>span{height:100%;display:block;width:0;background:var(--pink);transition:width .25s}.board{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;padding:9px;background:#efe8e4;border:1px solid #e6dcd5;border-radius:16px;touch-action:manipulation;user-select:none}.tile{border:1px solid #e8dede;background:#fff8f1;aspect-ratio:1;border-radius:10px;display:grid;place-items:center;position:relative;padding:8px;transition:background .15s,transform .18s,box-shadow .18s}.tile:hover{background:#fff}.tile.selected{background:#ffdfec;border-color:var(--pink);box-shadow:0 0 0 2px var(--pink);z-index:1;transform:scale(1.05)}.tile.suggested{background:#f9e7ab;box-shadow:0 0 0 2px #ceaa49;z-index:1}.tile.matched .candy{transform:scale(.15) rotate(30deg);opacity:0}.tile.invalid{animation:wiggle .24s 2}.candy{width:100%;height:100%;max-width:42px;max-height:42px;box-shadow:inset 0 -4px 5px #0001,0 3px 3px #76494414;position:relative;transition:transform .22s,opacity .22s}.candy:after,.big-candy:after,.closing-candy:after{content:'';position:absolute;top:14%;left:20%;width:38%;height:17%;background:#fff8;border-radius:50%;transform:rotate(-25deg)}.candy-0{background:linear-gradient(140deg,#ffacc2,#f1719c 60%,#df5988);border-radius:45% 45% 30% 30%}.candy-1{background:linear-gradient(140deg,#c9acef,#a17ed0 65%,#8961b7);border-radius:50%}.candy-2{background:linear-gradient(140deg,#bfe2c3,#8bc8a8 65%,#63a989);border-radius:9px 40% 9px 40%;transform:rotate(-8deg)}.candy-3{background:linear-gradient(140deg,#ffdd7d,#ffc05b 65%,#e5a142);border-radius:13px;transform:rotate(12deg)}.candy-4{background:repeating-linear-gradient(130deg,#8acfe8 0,#8acfe8 8px,#cfedf3 8px,#cfedf3 13px);border-radius:40% 28% 40% 28%}.game-bottom{display:flex;gap:10px;align-items:center;margin-top:15px;min-height:36px}.game-bottom p{font-size:10px;line-height:1.8;margin:0;flex:1;color:#8c7184}.hint-button{font-size:10px;white-space:nowrap;background:none;border:1px solid #e1cdd8;color:#855c7a;border-radius:20px;padding:6px 11px}.hint-button:disabled{opacity:.45;cursor:default}.game-shell.won{box-shadow:0 0 0 3px #a0caa9,0 24px 50px #64506412}.how{padding-top:100px;padding-bottom:90px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin:46px 0 53px}.step-number{font:400 35px 'Fredoka';color:#c39ab1;display:flex;align-items:center;gap:23px}.step-number i{height:1px;flex:1;background:#e4d7d9}.steps h3{font-size:18px;margin:20px 0 9px}.steps p{font-size:13px;line-height:1.9;color:#8b7c87;margin:0}.faq{border-top:1px solid var(--line);max-width:800px;margin:auto}.faq details{border-bottom:1px solid var(--line);font-size:13px}.faq summary{padding:22px 0;font-weight:600;list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:15px}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:20px;color:var(--pink);line-height:1}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{color:#847681;margin:0 0 24px;line-height:1.9;max-width:640px}.closing{max-width:1156px;margin:0 auto 70px;padding:58px 30px 65px;background:#f8dfe5;border:1px solid #f2d1db;border-radius:28px;position:relative;text-align:center;overflow:hidden}.closing .eyebrow{font-size:9px;margin-bottom:17px}.closing h2{font-size:35px;margin-bottom:26px}.closing h2 span{color:var(--pink)}.button-dark{background:var(--ink);color:#fff;font-size:12px;min-height:47px}.closing-flower{position:absolute;font-size:140px;left:9%;top:29%;color:#e996b3;transform:rotate(-14deg)}.closing-candy{position:absolute;right:10%;top:34%;width:94px;height:110px;transform:rotate(20deg);box-shadow:inset 0 -9px 12px #7651a329,8px 12px 0 #dba7c833}.footer{display:flex;align-items:center;gap:25px;justify-content:space-between;padding-top:0;padding-bottom:35px}.footer-wordmark{font:500 24px 'Fredoka';letter-spacing:-.5px}.footer-wordmark span{color:var(--pink);margin-left:6px}.footer p{font-size:10px;color:#93858e}.footer>a:last-child{font-size:10px;color:#847680}.world,.how,#play{scroll-margin-top:25px}@keyframes wiggle{25%{transform:translateX(-3px)}75%{transform:translateX(3px)}}
@media(min-width:1400px){.hero{min-height:710px}.hero-art{height:520px}.hero-art>img{height:475px}.hero-description{font-size:15px}}
@media(max-width:1000px){.wrap{padding-inline:28px}.header{padding-inline:28px}.hero{gap:20px;min-height:590px}.hero-art{height:400px;margin-right:0}.hero-art>img{height:360px}.hero-name{font-size:49px}h1{font-size:29px}.hero-actions{gap:16px}.button{gap:20px;padding-inline:21px}.sweet-sticker{width:90px;height:90px;padding:12px 5px;font-size:12px}.sweet-sticker strong{font-size:23px}.sweet-sticker>span{font-size:11px}.play-inner{gap:40px}.play-copy h2{font-size:37px}.game-shell{padding:18px}.tile{padding:6px}.card-body{padding:22px}.world-grid{gap:15px}.closing{margin-inline:28px}.closing-flower{left:4%;font-size:110px}.closing-candy{right:6%;width:75px;height:90px}.handwritten{font-size:16px}}
@media(max-width:700px){.wrap{padding-inline:23px}.header{padding:22px 23px 13px}.brand{font-size:21px}.brand-flower{font-size:40px}nav{gap:14px;font-size:11px}nav>a:first-child{display:none}.nav-play{padding:9px 14px;gap:15px}.hero{grid-template-columns:1fr;gap:24px;padding-top:35px;padding-bottom:53px;min-height:0}.hero-copy{text-align:center}.hero .eyebrow{justify-content:center;font-size:9px;margin-bottom:17px}.hero-name{font-size:clamp(40px,14.7vw,58px);letter-spacing:-2px}h1{font-size:29px;line-height:1.6;margin-bottom:20px}.hero-description{font-size:12px;line-height:1.95;margin-bottom:23px}.hero-actions{justify-content:center;gap:22px}.button{min-height:49px;font-size:12px;padding:11px 22px}.text-link{font-size:11px}.hero-note{justify-content:center;margin-top:22px;font-size:9px}.hero-art{height:325px;max-width:460px;width:100%;margin:15px auto 0}.hero-art>img{height:298px;border-radius:120px 120px 80px 80px}.art-backdrop{inset:8px 0 8px 0}.floating-flower{font-size:61px;top:-7px;left:6%}.sweet-sticker{right:-1px;top:0;width:82px;height:82px;border-width:4px}.sweet-sticker strong{font-size:20px}.sweet-sticker>span{margin-top:1px}.art-caption{left:11%;right:3%;font-size:7px;letter-spacing:1px;bottom:-7px}.ribbon{padding:12px 0}.ribbon>div{font-size:19px;gap:23px;width:950px;justify-content:flex-start;padding-left:22px}.ribbon span{font-size:16px}.world{padding-top:67px;padding-bottom:65px}.section-intro{display:block;margin-bottom:29px}.section-intro .eyebrow{font-size:8px;letter-spacing:1.7px;margin-bottom:12px}h2{font-size:29px}.section-intro>p{margin-top:17px;font-size:12px}.world-grid{grid-template-columns:1fr;gap:15px}.world-card{display:grid;grid-template-columns:38% 1fr;border-radius:16px}.card-art{height:100%;min-height:183px}.card-art:before{width:105px;height:105px}.card-art:after{width:143px;height:143px}.big-candy{width:59px;height:59px}.small-star{font-size:22px;right:9%;top:20%}.orbit{left:13px;top:12px;font-size:9px}.card-body{padding:24px 18px}.micro-label{font-size:7px;letter-spacing:1px}.card-body h3{font-size:18px;margin:8px 0}.card-body p{font-size:11px}.play-section{padding:52px 0 59px}.play-inner{grid-template-columns:1fr;gap:24px}.play-copy{text-align:center}.play-copy h2{font-size:35px;line-height:1.45}.play-copy>p{font-size:12px}.quick-rules{display:none}.play-copy p.demo-note{font-size:9px;margin-top:18px}.handwritten{display:none}.pill{font-size:8px;margin-bottom:16px}.game-shell{max-width:410px;margin:auto;padding:20px;border-radius:23px}.game-heading h3{font-size:16px}.game-heading .micro-label{font-size:7px}.tile{padding:7px}.board{gap:4px;padding:7px;border-radius:13px}.game-stats strong{font-size:24px}.game-stats>div{padding:8px 11px}.game-stats span{font-size:9px}.game-bottom p{font-size:9px}.how{padding-top:61px;padding-bottom:52px}.how h2{font-size:28px}.steps{grid-template-columns:1fr;gap:28px;margin:30px 0 38px}.steps article{display:grid;grid-template-columns:48px 1fr;column-gap:22px}.step-number{grid-row:span 2;font-size:30px;align-self:start}.step-number i{display:none}.steps h3{margin:0 0 5px;font-size:17px}.steps p{font-size:12px}.steps p br{display:none}.faq summary{font-size:12px;padding:20px 0}.faq details p{font-size:11px}.closing{margin:0 20px 38px;padding:37px 20px 43px;border-radius:22px}.closing h2{font-size:29px;position:relative;z-index:1}.closing .eyebrow{font-size:7px;letter-spacing:1.3px}.closing-flower{font-size:65px;left:-12px;top:55%}.closing-candy{width:43px;height:52px;right:-7px;top:36%}.closing .button{position:relative;z-index:1}.footer{flex-wrap:wrap;gap:13px;padding-bottom:24px}.footer-wordmark{font-size:23px}.footer p{order:3;flex-basis:100%;margin:0;font-size:8px}.footer>a:last-child{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

@media(max-width:360px){.header{padding-inline:17px}nav{gap:10px}.nav-play{padding-inline:11px}.hero-actions{gap:15px}.hero .text-link{gap:8px}.game-shell{padding:14px}.tile{padding:5px}}
