:root{--ink:#2d2545;--muted:#6f6680;--cream:#fff8e9;--paper:#fffcf4;--berry:#6850b9;--berry-dark:#3d2d81;--peach:#ffb3a8;--mint:#bce8cf;--butter:#ffe18a;--line:#ddd0bc;--shadow:0 15px 0 #342941;--display:"Fraunces",Georgia,serif;--body:"DM Sans","Avenir Next",sans-serif}
[hidden]{display:none!important}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.65}button,input{font:inherit}button{cursor:pointer}a{color:inherit}img{display:block;max-width:100%}.shell{width:min(1180px,calc(100% - 48px));margin-inline:auto}.skip-link{position:absolute;left:12px;top:-60px;z-index:100;background:var(--ink);color:white;padding:10px 16px}.skip-link:focus{top:12px}::selection{background:#ffd76c;color:var(--ink)}:focus-visible{outline:3px solid #f59c75;outline-offset:4px}
.site-header{position:relative;z-index:10;background:var(--cream);border-bottom:1px solid rgba(61,45,129,.13)}.header-inner{height:84px;display:flex;align-items:center;gap:36px}.brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--display);font-size:25px;font-weight:700;letter-spacing:-1.4px;text-decoration:none;white-space:nowrap}.brand-mark{width:37px;height:37px;border:2px solid var(--ink);border-radius:11px;background:var(--butter);display:grid;place-items:center;font-family:var(--display);font-size:25px;line-height:1;box-shadow:3px 3px 0 var(--ink);position:relative}.brand-mark span{position:absolute;right:-5px;top:-7px;color:#e36a68;font-family:var(--body);font-size:12px}.brand-dot{color:#f1917a}.site-header nav{display:flex;align-items:center;gap:30px;margin:auto}.site-header nav a,.header-cta{font-size:13px;font-weight:700;text-decoration:none}.site-header nav a:hover,.text-link:hover,.game-footer a:hover{color:var(--berry)}.header-cta{border:2px solid var(--ink);padding:10px 17px;border-radius:100px;background:white;box-shadow:3px 3px 0 var(--ink)}.header-cta span{margin-left:13px}.header-cta:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--ink)}
.hero{min-height:650px;display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:22px;padding-block:50px 70px}.hero-copy{position:relative;z-index:2}.eyebrow,.kicker{font-size:11px;font-weight:800;letter-spacing:.16em}.eyebrow{display:inline-flex;align-items:center;gap:9px;background:#eee7ff;border:1px solid #ccbdef;border-radius:100px;padding:8px 13px;color:var(--berry-dark)}.eyebrow-star{font-size:18px;line-height:0;color:#e7727b}.hero h1,h2,h3{font-family:var(--display);line-height:1.12;letter-spacing:-.04em}.hero h1{font-size:clamp(64px,7vw,105px);margin:30px 0 24px}.hero h1 em,h2 em{font-style:italic;color:var(--berry)}.hero-lede{max-width:490px;font-size:18px;line-height:1.72;color:#51475d}.hero-lede strong{color:var(--ink)}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;border:2px solid var(--ink);border-radius:100px;text-decoration:none;font-weight:800;line-height:1;padding:18px 24px;box-shadow:4px 5px 0 var(--ink);transition:transform .18s,box-shadow .18s,background .18s}.button:hover{transform:translate(-2px,-2px);box-shadow:6px 7px 0 var(--ink)}.button-primary{background:var(--berry);color:white}.button-primary:hover{background:#7a61c9}.text-link{font-weight:800;text-decoration:none;border-bottom:2px solid currentColor;padding-bottom:3px}.text-link span{margin-left:5px}.hero-note{display:flex;align-items:flex-start;gap:10px;max-width:460px;margin-top:29px;color:var(--muted);font-size:12px;line-height:1.5}.note-icon{flex:none;width:20px;height:20px;border:1px solid var(--muted);border-radius:50%;text-align:center;font-weight:800;line-height:18px}.hero-art{position:relative;isolation:isolate}.hero-art>img{width:100%;filter:drop-shadow(11px 18px 0 rgba(61,45,129,.13))}.art-sticker{position:absolute;z-index:1;border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink);font-size:11px;font-weight:900;line-height:1.2;text-align:center;letter-spacing:.045em}.art-sticker-top{right:0;top:20px;transform:rotate(9deg);border-radius:50%;width:119px;height:119px;background:var(--butter);display:grid;place-content:center}.art-sticker-top span{font-size:17px;color:#e16a6b}.art-sticker-bottom{bottom:25px;left:20px;padding:13px 20px;background:var(--mint);border-radius:100px;transform:rotate(-7deg);letter-spacing:0}.art-sticker-bottom span{color:#dd5b76}
.play-section{background:#eee8ff;border-top:2px solid #d3c8f2;border-bottom:2px solid #d3c8f2;padding:95px 0 105px;position:relative;overflow:hidden}.play-section:before,.play-section:after{content:"✳";position:absolute;color:#d9cff5;font-size:250px;line-height:1}.play-section:before{left:-80px;top:30px}.play-section:after{right:-35px;bottom:-80px}.play-section>.shell{position:relative;z-index:1}.section-intro,.section-heading-row{display:flex;justify-content:space-between;align-items:end;gap:36px}.kicker{color:var(--berry);margin:0 0 16px}h2{font-size:clamp(42px,5vw,65px);margin:0 0 20px}.section-intro p:not(.kicker),.section-heading-row>p{color:var(--muted);max-width:640px;margin:0}.play-intro{margin-bottom:33px}.play-doodle{font-size:70px;color:#ea8d92;position:relative;padding-right:45px}.play-doodle span{font-size:37px;color:#f8c857;position:absolute;right:0;top:-18px}.game-frame-wrap{background:#fffef8;border:2px solid var(--ink);border-radius:26px;box-shadow:var(--shadow);overflow:hidden}.game-toolbar{display:flex;gap:5px;padding:11px;background:#e3dbff;border-bottom:2px solid var(--ink);overflow-x:auto;scrollbar-width:thin}.game-tab{flex:1;white-space:nowrap;min-width:150px;border:0;background:transparent;border-radius:14px;padding:12px 15px;color:#544b6d;font-weight:800;font-size:14px}.game-tab:hover{background:#f5f0ff}.game-tab.is-active{background:#fffef8;color:var(--berry-dark);box-shadow:0 2px 0 #b7a8e0}.tab-symbol{font-size:19px;margin-right:6px;vertical-align:-1px}.game-placeholder,.player-host{height:min(66vw,610px);min-height:420px;background:#291f4e}.game-placeholder{background:radial-gradient(circle at 70% 23%,#7262ae 0 8%,transparent 30%),radial-gradient(circle at 17% 76%,#5f4d9e 0 10%,transparent 38%),#302453;display:grid;place-items:center;color:white;text-align:center;padding:35px;position:relative}.game-placeholder:before,.game-placeholder:after{position:absolute;content:"✦";font-size:50px;color:rgba(255,224,133,.6)}.game-placeholder:before{left:13%;top:18%}.game-placeholder:after{right:14%;bottom:14%;font-size:31px}.placeholder-inner{position:relative;z-index:1;max-width:600px}.placeholder-confetti{display:block;color:#ffd978;letter-spacing:24px;font-size:28px;margin-bottom:17px}.game-placeholder h3{font-size:clamp(36px,4vw,59px);margin:0 0 13px}.game-placeholder p{color:#e3dbfa;max-width:470px;margin:0 auto 28px}.button-game{background:#ffdd85;color:var(--ink);border-color:#1d163e;box-shadow:5px 5px 0 #1d163e}.button-game:hover{background:#ffecaa}.placeholder-small{font-size:12px;margin:22px auto 0!important}.player-host{display:flex;align-items:stretch;justify-content:center}.player-host[hidden]{display:none}.player-host iframe{width:100%;height:100%;border:0;background:#251b45}.game-status{text-align:center;padding:10px 20px;font-size:13px;background:#fff6db;color:var(--berry-dark)}.game-status[hidden]{display:none}.game-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 25px}.game-footer>div:first-child{display:flex;flex-direction:column;gap:2px;font-size:12px}.game-footer strong{font-size:14px}.game-footer span{color:var(--muted)}.game-footer-actions{display:flex;gap:20px;flex-wrap:wrap}.game-footer a{font-size:12px;font-weight:800;text-decoration:underline;text-underline-offset:3px}.player-help{font-size:12px;color:#675c82;margin:29px 4px 0}
.games-section{padding-block:115px 125px}.section-heading-row{margin-bottom:34px}.section-heading-row>p{max-width:365px;padding-bottom:9px}.mode-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}.mode-card{border:2px solid var(--ink);border-radius:22px;overflow:hidden;box-shadow:6px 7px 0 var(--ink);background:var(--paper);display:flex;flex-direction:column}.mode-art{height:245px;border-bottom:2px solid var(--ink);display:grid;place-items:center;overflow:hidden}.mode-art img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.mode-card:hover .mode-art img{transform:scale(1.045)}.mode-cakes .mode-art{background:#ffd3c4}.mode-pairs .mode-art{background:#d8caff}.mode-shop .mode-art{background:#c9ead3}.mode-body{padding:25px 27px 28px;display:flex;flex-direction:column;flex:1}.mode-number{font-family:var(--display);font-size:20px;font-weight:700;color:var(--berry)}.mode-number span{font-family:var(--body);font-size:10px;letter-spacing:.15em;margin-left:8px}.mode-body h3{font-size:38px;margin:15px 0 10px}.mode-body p{color:var(--muted);font-size:14px;margin:0 0 25px}.mode-launch{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:auto;border:0;border-top:1px solid var(--line);padding:17px 0 0;background:transparent;color:var(--berry-dark);font-weight:800;text-align:left}.mode-launch:hover{color:#d25b78}.mode-launch span{font-size:21px}
.guide-section{background:#e5f4e7;padding:105px 0;border-block:2px solid #b7d4c0}.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.guide-copy>p:not(.kicker),.about-copy>p{color:#625d69}.steps{padding:0;margin:30px 0;list-style:none}.steps li{display:flex;gap:20px;padding:16px 0;border-top:1px solid #b8d8c1}.steps li:last-child{border-bottom:1px solid #b8d8c1}.steps li>span{flex:none;width:37px;height:37px;border:2px solid var(--ink);background:var(--butter);border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:14px}.steps h3{font-size:23px;margin:2px 0 5px}.steps p{font-size:13px;color:#646576;margin:0}.guide-subhead{font-size:24px;margin:26px 0 8px}.guide-footnote{font-size:12px}.guide-visuals{display:grid;gap:23px}.guide-visuals figure{margin:0}.guide-visuals img{width:100%;border:2px solid var(--ink);border-radius:20px;background:white;box-shadow:6px 7px 0 var(--ink)}figcaption{font-size:11px;color:#5b6860;margin:12px 4px 0}.about-section{display:grid;grid-template-columns:1fr 1fr;gap:92px;align-items:center;padding-block:115px}.about-visual img{border:2px solid var(--ink);border-radius:24px;background:#f6e7d8;box-shadow:9px 11px 0 #e7d3c3}.about-copy a:not(.text-link){color:var(--berry-dark);font-weight:700;text-underline-offset:3px}.about-copy .text-link{display:inline-block;margin-top:15px}.faq-section{background:#f8ebef;padding:105px 0;border-block:2px solid #ebd2dc}.faq-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:105px}.faq-intro{color:var(--muted);max-width:300px}.faq-list{border-top:2px solid var(--ink)}.faq-list details{border-bottom:1px solid #cebcc8;padding:18px 0}.faq-list summary{list-style:none;cursor:pointer;font-weight:800;display:flex;align-items:center;justify-content:space-between;gap:15px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";display:grid;place-items:center;flex:none;width:28px;height:28px;border:1px solid var(--ink);border-radius:50%;font-size:19px;font-weight:400}.faq-list details[open] summary:after{content:"−";background:var(--berry);color:white}.faq-list details p{color:#706575;font-size:14px;padding-right:35px;margin:13px 0 3px}.site-footer{background:#29213d;color:#fff7e8;padding-top:70px}.footer-grid{display:grid;grid-template-columns:2.5fr 1fr 1fr;gap:70px;padding-bottom:63px}.footer-brand{font-size:25px}.footer-grid p{color:#c9bfda;font-size:13px;max-width:375px;line-height:1.7}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:11px}.footer-grid strong{font-size:12px;letter-spacing:.15em;color:#ffdb95;text-transform:uppercase;margin-bottom:5px}.footer-grid a:not(.brand){color:#e3dbee;font-size:13px;text-decoration:none}.footer-grid a:hover{color:#ffe18a}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #635776;color:#baafcb;font-size:11px;padding-block:21px}
@media(max-width:980px){.site-header nav{gap:15px}.header-inner{gap:20px}.hero{grid-template-columns:1fr 1fr}.hero h1{font-size:clamp(58px,7vw,80px)}.hero-art .art-sticker-top{right:-15px}.guide-grid,.about-section{gap:45px}.faq-grid{gap:45px}.mode-art{height:200px}.mode-body h3{font-size:31px}.game-footer{align-items:flex-start;flex-direction:column}}
@media(max-width:720px){.shell{width:min(100% - 32px,520px)}.site-header nav{display:none}.header-inner{height:70px;justify-content:space-between}.brand{font-size:21px}.brand-mark{width:32px;height:32px;font-size:21px}.header-cta{font-size:12px;padding:8px 13px}.header-cta span{margin-left:6px}.hero{display:flex;flex-direction:column;gap:13px;padding-block:55px 76px;min-height:0}.hero h1{font-size:clamp(56px,13vw,78px);margin:23px 0 18px}.hero-lede{font-size:16px}.hero-actions{gap:19px;flex-wrap:wrap}.hero-actions .text-link{font-size:13px}.hero-art{width:100%;max-width:520px}.art-sticker-top{width:92px!important;height:92px!important;font-size:8px!important;right:0!important;top:0!important}.art-sticker-bottom{font-size:9px;bottom:6px;left:0}.play-section,.games-section,.guide-section,.faq-section{padding-block:73px}.section-intro,.section-heading-row{display:block}.section-heading-row>p{max-width:100%;margin-top:15px}.play-doodle{display:none}h2{font-size:clamp(41px,10vw,57px)}.game-toolbar{gap:0}.game-tab{min-width:130px;font-size:12px;padding:10px 9px}.game-placeholder,.player-host{height:min(107vw,590px);min-height:355px}.game-placeholder{padding:18px}.game-placeholder h3{font-size:38px}.placeholder-confetti{font-size:22px}.button-game{gap:17px}.game-footer{padding:18px}.game-footer-actions{gap:8px 20px}.mode-grid{grid-template-columns:1fr;gap:23px}.mode-art{height:240px}.mode-body{padding:23px}.guide-grid,.about-section,.faq-grid{display:flex;flex-direction:column;gap:34px}.guide-visuals{gap:25px}.about-section{padding-block:80px}.about-visual{order:2}.about-copy{order:1}.faq-intro{max-width:100%}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{gap:10px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.hero-h1-small{display:block;font-family:var(--body);font-size:clamp(18px,2vw,27px);font-weight:800;letter-spacing:.04em;line-height:1.2;color:var(--berry);margin-bottom:10px;text-transform:uppercase}

a.mode-launch{text-decoration:none}

.footer-contact{padding:0 0 22px;font-size:14px;color:#e9e3f7}.footer-contact a{color:#fff;font-weight:800;text-underline-offset:3px}
