:root{--ink:#fffaf0;--muted:#d8cce8;--night:#160b28;--deep:#21103b;--purple:#6b38ad;--violet:#a65cff;--blue:#58c9ff;--yellow:#ffd94d;--pink:#ec65c8;--line:#ffffff20}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--night);color:var(--ink);font-family:"Nunito",Arial,sans-serif;font-size:16px;line-height:1.6}h1{font-family:"M PLUS 1",Arial,sans-serif;font-weight:800;line-height:1.12;letter-spacing:-.04em;margin:0}h2{font-family:"M PLUS 1",Arial,sans-serif;font-weight:900;line-height:1.12;letter-spacing:-.025em;margin:0}h3{font-family:"M PLUS 1",Arial,sans-serif;font-weight:900;font-size:1.08rem;line-height:1.2;margin:.35rem 0 .5rem}a{color:inherit}.site-header{height:82px;padding:0 clamp(20px,6vw,90px);display:flex;align-items:center;justify-content:space-between;background:#160b28;position:relative;z-index:2;border-bottom:1px solid var(--line)}.brand,.footer-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-family:"M PLUS 1",sans-serif;font-weight:800;font-size:1.25rem;letter-spacing:.04em}.brand img{width:51px;height:51px;object-fit:contain;border-radius:50%}.site-header nav{display:flex;align-items:center;gap:clamp(18px,3vw,42px)}.site-header nav a,.footer-links a{text-decoration:none;font-weight:700}.site-header nav a:hover,.footer-links a:hover{color:var(--yellow)}.hero{min-height:min(690px,calc(100svh - 82px));position:relative;display:flex;align-items:center;overflow:hidden;background:#260d3d}.hero-art,.hero-art img,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-art img{object-fit:cover;object-position:center 44%}.hero-shade{background:linear-gradient(90deg,rgba(19,7,29,.94) 0%,rgba(22,8,34,.80) 36%,rgba(25,7,35,.18) 75%),linear-gradient(0deg,rgba(18,7,31,.5),transparent 30%)}.hero-copy{position:relative;z-index:1;max-width:690px;margin-left:clamp(24px,9vw,140px);padding:72px 24px 86px 0}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;font-weight:800;color:var(--yellow);margin:0 0 14px}.hero h1{font-size:clamp(2.25rem,5vw,4.7rem);color:#fff}.hero h1 span{color:var(--yellow)}.hero-copy>p:not(.eyebrow):not(.platform-note){font-size:clamp(1rem,1.5vw,1.2rem);color:#f4edf8;max-width:530px;margin:20px 0 27px}.button{display:inline-flex;align-items:center;gap:15px;padding:13px 21px;border-radius:999px;text-decoration:none;font-weight:900;transition:transform .18s,filter .18s}.button:hover{transform:translateY(-2px);filter:brightness(1.08)}.button-yellow{background:var(--yellow);color:#251334}.platform-note{font-size:.83rem;font-weight:700;color:#fff;margin:18px 0 0}.platform-note span{color:var(--yellow);padding:0 6px}.intro{text-align:center;max-width:850px;padding:105px 24px 96px;margin:auto}.intro h2,.section-heading h2,.cta-band h2{font-size:clamp(1.8rem,3.5vw,3rem)}.intro>p:last-child{max-width:690px;color:var(--muted);margin:18px auto 0;font-size:1.08rem}.section-wrap{padding:22px clamp(20px,6vw,90px) 115px;max-width:1600px;margin:auto}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:32px}.feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.feature-card{overflow:hidden;background:linear-gradient(145deg,#2b1744,#201033);border:1px solid var(--line);border-radius:18px;box-shadow:0 10px 34px #08031138}.feature-card>img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;background:#321947}.card-copy{padding:17px 18px 21px;min-height:155px}.card-number{color:var(--blue);font-size:.67rem;letter-spacing:.13em;font-weight:900}.card-copy p{margin:0;color:var(--muted);font-size:.93rem}.cta-band{padding:52px clamp(22px,8vw,120px);background:linear-gradient(110deg,#6736a0,#3d267f 60%,#234779);display:flex;gap:35px;align-items:center;justify-content:space-between}.cta-band h2{color:#fff}.cta-band p:not(.eyebrow){color:#e8dcf3;margin:12px 0 0}.button-purple{background:var(--yellow);color:#251334;flex:none}.site-footer{padding:32px clamp(20px,6vw,90px);background:#10071d;display:flex;align-items:center;gap:22px;flex-wrap:wrap}.site-footer p{margin:0;color:var(--muted)}.footer-brand{margin-right:auto}.footer-brand img{height:44px;width:44px;object-fit:contain;border-radius:50%}.footer-links{display:flex;gap:20px}.site-footer small{width:100%;color:#9f91ad;border-top:1px solid var(--line);padding-top:16px}.simple-page{min-height:calc(100vh - 82px - 160px);padding:clamp(42px,7vw,90px) 22px}.simple-card{max-width:780px;margin:0 auto;padding:clamp(24px,5vw,52px);background:#24123a;border:1px solid var(--line);border-radius:22px}.simple-card h1{font-size:clamp(2.2rem,5vw,3.6rem);margin-bottom:14px}.simple-card>p{color:var(--muted)}.support-form{display:grid;gap:17px;margin-top:30px}.support-form label{font-weight:800;display:grid;gap:7px}.support-form input,.support-form select,.support-form textarea{width:100%;background:#140a22;border:1px solid #ffffff38;color:white;border-radius:10px;padding:12px 14px;font:inherit}.support-form textarea{min-height:150px;resize:vertical}.support-form input:focus,.support-form select:focus,.support-form textarea:focus{outline:2px solid var(--blue);outline-offset:2px}.form-status{min-height:1.5em;color:var(--yellow);font-weight:800}.support-note{border-left:3px solid var(--blue);padding:11px 15px;background:#ffffff09;color:var(--muted);font-size:.9rem}.privacy-plain{background:#fff;color:#111;font:16px/1.5 Arial,sans-serif}.privacy-plain main{max-width:900px;margin:0 auto;padding:28px 22px}.privacy-plain h1{font:700 1.8rem/1.2 Arial,sans-serif;color:#111;margin:0 0 1rem}.privacy-plain a{color:#0645ad}.privacy-back{color:#111}.privacy-plain .privacy-text{white-space:pre-wrap}.privacy-plain .site-footer{display:block;background:none;color:#111;padding:15px 0}.privacy-plain .site-footer a{color:#0645ad}.privacy-plain .site-footer small{display:block;border-color:#aaa;color:#444;margin-top:15px;padding-top:10px}@media(max-width:1000px){.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-art img{object-position:58% center}}@media(max-width:650px){.site-header{height:auto;min-height:74px;padding:10px 18px;align-items:flex-start;gap:12px}.brand{font-size:1rem}.brand img{width:44px;height:44px}.site-header nav{gap:13px;flex-wrap:wrap;justify-content:flex-end;padding-top:10px}.site-header nav a{font-size:.83rem}.hero{min-height:760px;align-items:flex-end}.hero-art img{object-fit:cover;object-position:center top}.hero-shade{background:linear-gradient(0deg,rgba(18,7,29,.97) 0%,rgba(18,7,29,.80) 40%,rgba(18,7,29,.05) 83%)}.hero-copy{margin:0;padding:0 24px 56px;max-width:600px}.hero h1{font-size:clamp(2.1rem,9vw,3.4rem)}.intro{padding:76px 24px}.section-wrap{padding-bottom:75px}.section-heading{margin-bottom:22px}.feature-grid{gap:13px}.card-copy{padding:14px;min-height:184px}.feature-card h3{font-size:.98rem}.card-copy p{font-size:.86rem}.cta-band{align-items:flex-start;flex-direction:column;padding-top:42px;padding-bottom:42px}.site-footer{gap:15px}.site-footer p{width:100%;order:2}.footer-brand{margin-right:0}.footer-links{margin-left:auto}.site-footer small{order:3}}@media(max-width:410px){.site-header{display:block}.site-header nav{justify-content:flex-start;padding:8px 0 3px}.feature-grid{grid-template-columns:1fr}.card-copy{min-height:0}.feature-card>img{aspect-ratio:1.25/1}.hero{min-height:720px}}




/* Brand type, centered navigation, and interactive lime buttons */
@font-face{font-family:"Cloudy Bumpy";src:url("assets/CloudyBumpy-V4xlz.ttf") format("truetype");font-display:swap}
h1,h2,h3{font-family:"Cloudy Bumpy",sans-serif;font-weight:400;letter-spacing:normal}
:root{--lime:#a9d957}
.site-header{height:112px;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:24px;padding:8px clamp(20px,5vw,76px)}
.site-header .brand-center{grid-column:2;grid-row:1;justify-self:center}
.site-header .brand-center img{width:94px;height:94px}
.site-header .nav-left{grid-column:1;grid-row:1;justify-self:start;display:flex;align-items:center;gap:clamp(16px,2.5vw,36px)}
.site-header .nav-right{grid-column:3;grid-row:1;justify-self:end;display:flex;align-items:center;gap:clamp(16px,2.5vw,34px)}
.site-header nav a{white-space:nowrap}
.site-header .button{padding:11px 17px;font-size:.9rem}
.button,.button-yellow,.button-purple,.button-outline{background:var(--lime);color:#19112a;border:0;cursor:pointer}
.button:hover,.button-yellow:hover,.button-purple:hover,.button-outline:hover,.button:focus-visible,.button-yellow:focus-visible,.button-purple:focus-visible,.button-outline:focus-visible{background:linear-gradient(105deg,#ff55c8 0%,#ad65f5 52%,#4cc8ff 100%);color:#171020;box-shadow:0 8px 26px #b35bed55;transform:translateY(-2px)}
.button:focus-visible,.button-yellow:focus-visible,.button-purple:focus-visible,.button-outline:focus-visible{outline:3px solid #fff;outline-offset:3px}
.button svg,.platform-note a svg{width:1.15em;height:1.15em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none;vertical-align:middle;margin-right:.55em}
.button-discord svg{fill:currentColor;stroke:none}
.button-playtest{background:#ffd84d;color:#211332}
.button-discord{background:#62caff;color:#15162d}
.button-playtest:hover,.button-discord:hover{background:linear-gradient(105deg,#ff55c8 0%,#ad65f5 52%,#4cc8ff 100%);color:#171020}
.eyebrow-hero{color:var(--lime);text-transform:uppercase}
.eyebrow-feature{color:#62caff;text-transform:none}
.feature-card h3{font-family:"Nunito",Arial,sans-serif;font-size:1.38rem;font-weight:800;text-transform:uppercase;letter-spacing:.025em}
@media(max-width:650px){.feature-card h3{font-size:1.2rem}}
@keyframes heading-gradient-flow{0%{background-position:0% 50%}100%{background-position:200% 50%}}
.animated-gradient{background-size:200% 100%;background-position:0% 50%;background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:heading-gradient-flow 8s linear infinite}
.gradient-purple{background-image:linear-gradient(100deg,#b95af3 0%,#ed79dd 27%,#9876f4 55%,#db8bff 78%,#8f47db 100%)}
.gradient-blue{background-image:linear-gradient(100deg,#43c9ff 0%,#7a9dff 27%,#51e0e8 54%,#8fbcff 78%,#3289e8 100%)}
.gradient-green{background-image:linear-gradient(100deg,#7eea9a 0%,#b8f542 27%,#52d8b0 54%,#a3e979 78%,#42c985 100%)}
.gradient-green-yellow{background-image:linear-gradient(100deg,#8bdd5f 0%,#ffe76a 26%,#5fdb84 54%,#fff070 78%,#78ce4f 100%)}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:14px}
.platform-note a{text-decoration:none}
.platform-note a:hover{text-decoration:underline}
.footer-brand img{width:64px;height:64px}
@media(max-width:650px){.site-header{height:auto;min-height:0;display:grid;grid-template-columns:1fr auto 1fr;grid-template-rows:70px auto auto;align-items:center;gap:7px;padding:8px 14px 12px}.site-header .brand-center{grid-column:2;grid-row:1}.site-header .brand-center img{width:66px;height:66px}.site-header .nav-left{grid-column:1/4;grid-row:2;justify-self:center;gap:20px;padding:0}.site-header .nav-right{grid-column:1/4;grid-row:3;justify-self:center;gap:18px;padding:0}.site-header .nav-right .button{padding:9px 14px;font-size:.82rem}.hero-actions{gap:9px}.hero-actions .button{font-size:.88rem;padding:11px 15px}}
@media(max-width:410px){.site-header{display:grid}.site-header .nav-left,.site-header .nav-right{justify-content:center}}
/* Purple starfield stays in place as the page content scrolls */
body{background-color:var(--night);background-image:linear-gradient(180deg,rgba(16,7,30,.62) 0%,rgba(71,34,112,.50) 100%),url("assets/purple-stars-background.jpg");background-size:cover,cover;background-position:center center;background-attachment:fixed,fixed}
body{position:relative;isolation:isolate;background-image:none}
.site-background,.background-wash{position:fixed;inset:0;width:100%;height:100%;pointer-events:none}
.site-background{z-index:-2;object-fit:cover;opacity:.94}
.background-wash{z-index:-1;background:linear-gradient(180deg,rgba(15,7,29,.46) 0%,rgba(69,31,109,.53) 100%)}
.site-header{background:rgba(22,11,40,.76);backdrop-filter:blur(10px)}
.hero-art img{opacity:.9}
.feature-card{background:linear-gradient(145deg,rgba(43,23,68,.76),rgba(32,16,51,.76));backdrop-filter:blur(7px)}
.simple-card{background:rgba(36,18,58,.80);backdrop-filter:blur(9px)}
.cta-band{background:linear-gradient(110deg,rgba(103,54,160,.78),rgba(61,38,127,.76) 60%,rgba(35,71,121,.78))}
.site-footer{background:rgba(16,7,29,.78);backdrop-filter:blur(8px)}
.support-note{background:rgba(255,255,255,.06)}
.support-form input,.support-form select,.support-form textarea{background:rgba(20,10,34,.72)}
.site-background{z-index:0}
.background-wash{z-index:1}
.site-header,body>main,.site-footer{position:relative;z-index:2}
.privacy-main{z-index:2}
.privacy-plain{min-height:100vh;background:transparent;color:#fff;font:16px/1.5 Arial,sans-serif}
.privacy-main{max-width:950px;margin:0 auto;padding:28px 22px 50px;position:relative;z-index:0}
.privacy-main pre{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:24px;background:rgba(19,9,34,.80);border:1px solid rgba(255,255,255,.16);border-radius:14px;backdrop-filter:blur(8px);font:inherit;color:#fff}
.privacy-main p{margin:16px 0 0;color:#fff}
.privacy-main a{color:#b9f542}
.menu-toggle,.mobile-wishlist{display:none}
@media(max-width:650px){
.site-header{grid-template-columns:1fr auto 1fr;grid-template-rows:70px auto auto}
.site-header .brand-center{grid-column:2;grid-row:1}
.site-header .menu-toggle{display:flex;grid-column:1;grid-row:1;justify-self:start;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:10px;border:0;border-radius:12px;background:var(--lime);cursor:pointer}
.menu-toggle span{display:block;width:24px;height:2px;border-radius:2px;background:#171020;transition:transform .2s,opacity .2s}
.site-header.menu-open .menu-toggle span:first-child{transform:translateY(7px) rotate(45deg)}
.site-header.menu-open .menu-toggle span:nth-child(2){opacity:0}
.site-header.menu-open .menu-toggle span:last-child{transform:translateY(-7px) rotate(-45deg)}
.site-header .mobile-wishlist{display:grid;grid-column:3;grid-row:1;justify-self:end;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--lime);color:#171020}
.mobile-wishlist svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.site-header .nav-left,.site-header .nav-right{display:none;grid-column:1/4;justify-self:center;flex-wrap:wrap;padding:8px 0;gap:18px}
.site-header .nav-left{grid-row:2}
.site-header .nav-right{grid-row:3}
.site-header.menu-open .nav-left,.site-header.menu-open .nav-right{display:flex}
.site-header .nav-right .button-steam{display:none}
.menu-toggle:hover,.menu-toggle:focus-visible,.mobile-wishlist:hover,.mobile-wishlist:focus-visible{background:linear-gradient(105deg,#ff55c8 0%,#ad65f5 52%,#4cc8ff 100%);box-shadow:0 8px 26px #b35bed55}
.hero{align-items:flex-start}
.hero-copy{margin:0 auto;padding:48px 20px 24px;width:100%;text-align:center}
.hero-copy>p:not(.eyebrow):not(.platform-note){margin-left:auto;margin-right:auto}
.hero-shade{background:linear-gradient(180deg,rgba(18,7,29,.85) 0%,rgba(18,7,29,.5) 45%,rgba(18,7,29,.08) 100%)}
.hero-actions{justify-content:center}
}
/* Gentle motion accents for the hero title and wishlist action */
@keyframes cute-title-float{0%,100%{transform:translateY(0) rotate(-.25deg)}50%{transform:translateY(-4px) rotate(.25deg)}}
.hero h1.animated-gradient{animation:heading-gradient-flow 8s linear infinite,cute-title-float 3.8s ease-in-out infinite;filter:drop-shadow(0 0 14px rgba(219,139,255,.2))}
@keyframes wishlist-pulse{0%,100%{box-shadow:0 0 0 0 rgba(169,217,87,0)}50%{box-shadow:0 0 0 7px rgba(169,217,87,.22)}}
.site-header .button-steam,.site-header .mobile-wishlist{animation:wishlist-pulse 2.3s ease-in-out infinite}
/* Keep the gradient stationary and animate hue to avoid a looping seam */
@keyframes heading-gradient-flow{0%,100%{filter:hue-rotate(0deg)}50%{filter:hue-rotate(28deg)}}
.animated-gradient{background-size:100% 100%;background-position:50% 50%;animation:heading-gradient-flow 12s ease-in-out infinite}
.hero h1.animated-gradient{animation:heading-gradient-flow 12s ease-in-out infinite,cute-title-float 3.8s ease-in-out infinite;text-shadow:0 0 14px rgba(219,139,255,.2);filter:none}
.hero h1.animated-gradient span{color:transparent;-webkit-text-fill-color:transparent}
.section-heading{justify-content:center;text-align:center}
.section-heading>div{width:100%}
.intro{padding-top:58px;padding-bottom:42px}
.section-wrap{padding-top:0}
@media(max-width:650px){.intro{padding-top:46px;padding-bottom:34px}.section-wrap{padding-top:0}}
.button,.site-header .button,.hero-actions .button,.support-form button{font-family:"Nunito",Arial,sans-serif;font-size:1rem;font-weight:800}
@media(max-width:650px){.site-header .button,.hero-actions .button,.support-form button{font-size:1rem}}
/* Let the moving nebula show through the header and footer bands */
.background-wash{background:linear-gradient(180deg,rgba(15,7,29,.22) 0%,rgba(69,31,109,.25) 100%)}
.site-header,.site-footer{background:rgba(16,6,29,.34);backdrop-filter:blur(3px)}
/* Larger brand marks in the header and footer */
.site-header{height:144px}
.site-header .brand-center img{width:124px;height:124px}
.footer-brand img{width:92px;height:92px}
@media(max-width:650px){.site-header{height:auto;grid-template-rows:86px auto auto}.site-header .brand-center img{width:78px;height:78px}.footer-brand img{width:72px;height:72px}}
/* Unified button typography and hover treatment */
.button,button,.mobile-wishlist{font-family:"Nunito",Arial,sans-serif;font-weight:800}
.button:hover,.button:focus-visible,button:hover,button:focus-visible,.mobile-wishlist:hover,.mobile-wishlist:focus-visible{background:linear-gradient(105deg,#ff55c8 0%,#ad65f5 52%,#4cc8ff 100%);color:#171020}
.site-header nav a.button:hover,.site-header nav a.button:focus-visible{color:#171020}
.button-playtest:hover,.button-playtest:focus-visible,.button-discord:hover,.button-discord:focus-visible{color:#171020}
/* Tablet navigation: hamburger, centered logo, wishlist at the top right */
@media(min-width:651px) and (max-width:1200px){
.site-header{height:auto;min-height:0;display:grid;grid-template-columns:1fr auto 1fr;grid-template-rows:104px auto auto;align-items:center;gap:8px;padding:8px 24px 12px}
.site-header .brand-center{grid-column:2;grid-row:1}
.site-header .brand-center img{width:96px;height:96px}
.site-header .menu-toggle{display:flex;grid-column:1;grid-row:1;justify-self:start;flex-direction:column;justify-content:center;gap:5px;width:46px;height:46px;padding:11px;border:0;border-radius:12px;background:var(--lime);cursor:pointer}
.site-header .menu-toggle span{display:block;width:24px;height:2px;border-radius:2px;background:#171020;transition:transform .2s,opacity .2s}
.site-header.menu-open .menu-toggle span:first-child{transform:translateY(7px) rotate(45deg)}
.site-header.menu-open .menu-toggle span:nth-child(2){opacity:0}
.site-header.menu-open .menu-toggle span:last-child{transform:translateY(-7px) rotate(-45deg)}
.site-header .mobile-wishlist{display:grid;grid-column:3;grid-row:1;justify-self:end;place-items:center;width:46px;height:46px;border-radius:12px;background:var(--lime);color:#171020}
.site-header .mobile-wishlist svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.site-header .nav-left,.site-header .nav-right{display:none;grid-column:1/4;justify-self:center;flex-wrap:wrap;padding:8px 0;gap:22px}
.site-header .nav-left{grid-row:2}
.site-header .nav-right{grid-row:3}
.site-header.menu-open .nav-left,.site-header.menu-open .nav-right{display:flex}
.site-header .nav-right .button-steam{display:none}
.site-header .menu-toggle:hover,.site-header .menu-toggle:focus-visible,.site-header .mobile-wishlist:hover,.site-header .mobile-wishlist:focus-visible{background:linear-gradient(105deg,#ff55c8 0%,#ad65f5 52%,#4cc8ff 100%);color:#171020}
}
.gradient-pink{background-image:linear-gradient(100deg,#ff65c9 0%,#e890ff 26%,#ff7fb3 54%,#d86bff 78%,#ff65c9 100%)}
@keyframes playtest-green-yellow-pulse{0%,100%{filter:brightness(1) saturate(1)}50%{filter:brightness(1.16) saturate(1.2)}}
.button-playtest{background:linear-gradient(105deg,#48d87a 0%,#fff052 50%,#80df57 100%);animation:playtest-green-yellow-pulse 3s ease-in-out infinite}
.button-playtest:hover,.button-playtest:focus-visible{background:linear-gradient(105deg,#ff55c8 0%,#ad65f5 52%,#4cc8ff 100%);color:#171020;animation:none;filter:none}
.button-playtest{background:#ffd84d;color:#211332;animation:none;filter:none}
.button-playtest:hover,.button-playtest:focus-visible{background:linear-gradient(105deg,#ff55c8 0%,#ad65f5 52%,#4cc8ff 100%);color:#171020}
.hero-subheading{font-size:clamp(1.3rem,2.5vw,2rem);margin:.3rem 0 1rem}
.hero h1.animated-gradient span.inline-playtest-gradient{background-image:linear-gradient(100deg,#8bdd5f 0%,#ffe76a 26%,#5fdb84 54%,#fff070 78%,#78ce4f 100%);background-size:100% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.hero h1.animated-gradient span.inline-playtest-gradient{position:static;display:inline}
.hero-title-sparkle{position:absolute;width:.14em;height:.14em;background:#fff8bf;clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);filter:drop-shadow(0 0 .14em #fff8bf);pointer-events:none;animation:playtest-sparkle-twinkle 1.8s ease-in-out infinite}
.sparkle-a{left:8%;top:3%}
.sparkle-b{left:51%;top:-5%;width:.1em;height:.1em;animation-delay:.4s}
.sparkle-c{right:5%;top:28%;animation-delay:.8s}
.sparkle-d{left:22%;bottom:-4%;width:.11em;height:.11em;animation-delay:1.2s}
.sparkle-e{right:24%;bottom:4%;animation-delay:.65s}
.sparkle-f{left:1%;bottom:22%;width:.1em;height:.1em;animation-delay:1.4s}
@keyframes playtest-sparkle-twinkle{0%,100%{opacity:.15;transform:scale(.55) rotate(0deg)}50%{opacity:1;transform:scale(1.15) rotate(45deg)}}
.hero-subheading{font-size:clamp(2.25rem,5vw,4.7rem);line-height:1.12;margin:.08em 0 .28em}
@media(max-width:650px){.hero-subheading{font-size:clamp(2.1rem,9vw,3.4rem);line-height:1.12;margin:.08em 0 .3em}}
.hero h1.animated-gradient{position:relative}
@keyframes playtest-button-shake{0%,100%{transform:translateX(0) rotate(0)}20%{transform:translateX(-2px) rotate(-1deg)}40%{transform:translateX(2px) rotate(1deg)}60%{transform:translateX(-1px) rotate(-.5deg)}80%{transform:translateX(1px) rotate(.5deg)}}
.button-playtest:hover{animation:playtest-button-shake .34s ease-in-out}
.simple-card h1.support-title{position:relative;display:inline-block;animation:heading-gradient-flow 12s ease-in-out infinite,cute-title-float 3.8s ease-in-out infinite;text-shadow:0 0 14px rgba(219,139,255,.2)}
/* Desktop-only character layer in the Steam callout */
.site-header .brand-center{overflow:visible}
.site-header .brand-center img{border-radius:0;overflow:visible}
.desktop-aim-character{display:none}
@media(min-width:1201px) and (hover:hover) and (pointer:fine){.desktop-aim-character{display:block;position:relative;flex:0 0 clamp(230px,22vw,340px);width:clamp(230px,22vw,340px);aspect-ratio:16/9;overflow:visible}.desktop-aim-character img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none}.desktop-aim-character .aim-eyes{transition:transform .08s linear;will-change:transform}}
.hero h1.animated-gradient span.inline-playtest-gradient{background-image:linear-gradient(100deg,#4bdc79 0%,#8fe950 28%,#ffe84d 44%,#45dc83 60%,#a5ed4c 80%,#4bdc79 100%)}
@media(min-width:1201px) and (hover:hover) and (pointer:fine){.desktop-aim-character{flex-basis:clamp(280px,28vw,430px);width:clamp(280px,28vw,430px);align-self:flex-end;margin-bottom:-52px}.cta-band{overflow:hidden}}
@media(min-width:1201px) and (max-width:1350px) and (hover:hover) and (pointer:fine){.cta-band{gap:14px}}
.hero h1.animated-gradient span.inline-playtest-gradient{background-image:linear-gradient(100deg,#7eea9a 0%,#b8f542 27%,#52d8b0 54%,#a3e979 78%,#42c985 100%)}

/* Shared playful hover: every button shakes and gets a burst of sparkles. */
@keyframes zap-button-wiggle{0%,100%{transform:translate(0,0) rotate(0)}20%{transform:translate(-2px,-1px) rotate(-1.3deg)}40%{transform:translate(2px,1px) rotate(1.2deg)}60%{transform:translate(-1px,1px) rotate(-.8deg)}80%{transform:translate(1px,-1px) rotate(.7deg)}}
@keyframes zap-sparkles-pop{0%{opacity:0;transform:scale(.25) rotate(-25deg)}25%{opacity:1}75%{opacity:.95}100%{opacity:0;transform:scale(1.35) rotate(35deg)}}
.button,button,.mobile-wishlist{position:relative;isolation:isolate;overflow:visible}
.button:hover,button:hover,.mobile-wishlist:hover{animation:zap-button-wiggle .38s ease-in-out infinite;z-index:3}
.button::before,button::before,.mobile-wishlist::before,.button::after,button::after,.mobile-wishlist::after{content:"✦  ✧  ✦  ✧";position:absolute;z-index:2;inset:-14px -10px;display:flex;align-items:flex-start;justify-content:space-between;padding:0 2px;color:#fff9b8;font:900 .75rem/1 "Nunito",Arial,sans-serif;letter-spacing:.08em;text-shadow:0 0 5px #fff,0 0 12px #ff69dc,0 0 18px #70d5ff;opacity:0;pointer-events:none}
.button::after,button::after,.mobile-wishlist::after{content:"✧  ✦  ✧";inset:auto -9px -13px;align-items:flex-end;color:#ffffff}
.button:hover::before,button:hover::before,.mobile-wishlist:hover::before,.button:hover::after,button:hover::after,.mobile-wishlist:hover::after{animation:zap-sparkles-pop .65s ease-out infinite}
.button:hover::after,button:hover::after,.mobile-wishlist:hover::after{animation-delay:.18s}
.button:focus-visible::before,button:focus-visible::before,.mobile-wishlist:focus-visible::before,.button:focus-visible::after,button:focus-visible::after,.mobile-wishlist:focus-visible::after{opacity:1}
.feature-card{transform-origin:center;transition:box-shadow .2s,border-color .2s}
@keyframes zap-card-wiggle{0%,100%{transform:translate(0,0) rotate(0)}20%{transform:translate(-2px,0) rotate(-.35deg)}40%{transform:translate(2px,1px) rotate(.35deg)}60%{transform:translate(-1px,-1px) rotate(-.25deg)}80%{transform:translate(1px,0) rotate(.2deg)}}
.feature-card:hover{animation:zap-card-wiggle .38s ease-in-out infinite;z-index:1;border-color:#e88cff;box-shadow:0 14px 38px #d74dff44}
@media(prefers-reduced-motion:reduce){.button:hover,button:hover,.mobile-wishlist:hover,.feature-card:hover{animation:none}.button:hover::before,button:hover::before,.mobile-wishlist:hover::before,.button:hover::after,button:hover::after,.mobile-wishlist:hover::after{animation:none;opacity:1}}
/* Replace the paired sparkle rows with individual, randomized bursts. */
.button::before,button::before,.mobile-wishlist::before,.button::after,button::after,.mobile-wishlist::after{content:none!important}
.button-sparkle{position:absolute;z-index:5;display:block;color:var(--sparkle-color,#fff6a5);font:900 var(--sparkle-size,15px)/1 "Nunito",Arial,sans-serif;text-shadow:0 0 4px #fff,0 0 9px #ee68ff,0 0 15px #6ad7ff;pointer-events:none;animation:button-sparkle-drift var(--sparkle-duration,.72s) ease-out forwards;will-change:transform,opacity}
@keyframes button-sparkle-drift{0%{opacity:0;transform:translate(0,0) scale(.2) rotate(-22deg)}22%{opacity:1;transform:translate(0,0) scale(1.2) rotate(8deg)}100%{opacity:0;transform:translate(var(--sparkle-dx,0px),var(--sparkle-dy,-18px)) scale(.35) rotate(48deg)}}
@media(prefers-reduced-motion:reduce){.button-sparkle{animation-duration:.01ms}}
/* Button icons become a filled black sparkle while hovered or keyboard-focused. */
.button svg,button svg,.mobile-wishlist svg{fill:#171020;stroke:#171020}
.button-icon-original{transition:opacity .12s ease,transform .25s ease}
.button-icon-sparkle{position:absolute;z-index:4;display:none;width:1.15em;height:1.15em;place-items:center;color:#11101a;font:900 1.18em/1 "Nunito",Arial,sans-serif;text-shadow:0 0 1px #11101a;pointer-events:none}
.button:hover .button-icon-original,button:hover .button-icon-original,.mobile-wishlist:hover .button-icon-original,.button:focus-visible .button-icon-original,button:focus-visible .button-icon-original,.mobile-wishlist:focus-visible .button-icon-original{opacity:0;transform:scale(.35) rotate(-35deg)}
.button:hover .button-icon-sparkle,button:hover .button-icon-sparkle,.mobile-wishlist:hover .button-icon-sparkle,.button:focus-visible .button-icon-sparkle,button:focus-visible .button-icon-sparkle,.mobile-wishlist:focus-visible .button-icon-sparkle{display:inline-grid;animation:black-icon-sparkle .85s ease-in-out infinite}
@keyframes black-icon-sparkle{0%,100%{transform:scale(.85) rotate(-12deg)}50%{transform:scale(1.25) rotate(16deg)}}
@media(prefers-reduced-motion:reduce){.button:hover .button-icon-sparkle,button:hover .button-icon-sparkle,.mobile-wishlist:hover .button-icon-sparkle,.button:focus-visible .button-icon-sparkle,button:focus-visible .button-icon-sparkle,.mobile-wishlist:focus-visible .button-icon-sparkle{animation:none}}
/* Keep the sparkle in the icon's exact flex slot so it cannot drift. */
.button-icon-original{display:inline-block;opacity:1;transform:none}
.button-icon-sparkle{position:static;display:none;flex:none;margin-right:.55em;width:1.15em;height:1.15em;vertical-align:middle}
.button:hover .button-icon-original,button:hover .button-icon-original,.mobile-wishlist:hover .button-icon-original,.button:focus-visible .button-icon-original,button:focus-visible .button-icon-original,.mobile-wishlist:focus-visible .button-icon-original{display:none}
.button:hover .button-icon-sparkle,button:hover .button-icon-sparkle,.mobile-wishlist:hover .button-icon-sparkle,.button:focus-visible .button-icon-sparkle,button:focus-visible .button-icon-sparkle,.mobile-wishlist:focus-visible .button-icon-sparkle{display:inline-grid}
.support-trap{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
