:root {
  --ink:#583718; --ink-soft:#79563b; --gold:#ffbd1f; --gold-deep:#d98700;
  --cream:#fff8df; --cream-2:#fff0c9; --leaf:#3fae57; --leaf-dark:#237c3b;
  --card-border:rgba(183,111,10,.32); --shadow:0 18px 45px rgba(92,54,15,.16);
  --page:#fffaf0; --paper:#fff5dc;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:ui-rounded,"SF Pro Rounded","SF Pro Display",Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fffaf0;min-height:100vh}
a{color:inherit}.wrap{width:min(1160px,calc(100% - 38px));margin:0 auto}

/* Shared legal/support pages */
.site-header{position:sticky;top:0;z-index:20;backdrop-filter:blur(16px);background:rgba(255,253,246,.78);border-bottom:1px solid rgba(105,65,24,.09)}
.nav{min-height:72px;display:flex;align-items:center;gap:24px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:900;letter-spacing:-.04em;font-size:29px}
.brand-badge{width:42px;height:42px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(145deg,#ffe36a,#ffab00);border:3px solid #a85d00;box-shadow:inset 0 2px 0 rgba(255,255,255,.8),0 5px 13px rgba(133,76,5,.18);color:#8a4800}
.nav-links{margin-left:auto;display:flex;align-items:center;gap:18px}
.nav-links a{text-decoration:none;color:var(--ink-soft);font-weight:750;font-size:14px}.nav-links a:hover{color:var(--ink)}
.legal-shell{padding:54px 0 92px;background:radial-gradient(circle at 8% 10%,rgba(255,142,177,.22),transparent 24rem),radial-gradient(circle at 88% 14%,rgba(124,204,244,.28),transparent 28rem),linear-gradient(180deg,#fffdf6 0%,#fff8e8 55%,#f9f7e9 100%)}
.legal-card{width:min(880px,100%);margin:0 auto;background:rgba(255,253,244,.92);border:1px solid var(--card-border);border-radius:30px;box-shadow:var(--shadow);padding:clamp(24px,5vw,54px)}
.eyebrow{color:var(--gold-deep);text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:900}
.legal-card h1{font-size:clamp(34px,5vw,52px);letter-spacing:-.04em;margin:8px 0}
.updated{color:#987554;font-size:14px;margin-bottom:34px}.legal-card h2{margin:30px 0 8px;font-size:21px}
.legal-card p,.legal-card li{color:#6d5137;line-height:1.72}.legal-card ul{padding-left:22px}
.notice{margin:24px 0;padding:17px 19px;border-radius:16px;background:#fff3c8;border:1px solid #e9c869;color:#745021}
.site-footer{border-top:1px solid rgba(102,65,27,.1);background:rgba(255,255,255,.42);padding:28px 0}
.footer-row{display:flex;justify-content:space-between;gap:18px;align-items:center;color:#8a6b4b;font-size:13px}.footer-links{display:flex;gap:15px;flex-wrap:wrap}.footer-links a{text-decoration:none}.footer-links a:hover{text-decoration:underline}
.status{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:7px 11px;background:#e9f8e8;color:#317642;font-weight:800;font-size:13px}.dot{width:8px;height:8px;border-radius:50%;background:#48b75c}

/* Landing page */
.landing{background:#f8efd8;color:#5b341b}
.landing-nav-shell{position:absolute;top:18px;left:0;right:0;z-index:30}
.landing-nav{height:64px;border-radius:24px;background:rgba(255,252,241,.92);border:1px solid rgba(255,255,255,.72);box-shadow:0 10px 28px rgba(66,42,21,.18);display:flex;align-items:center;padding:7px 20px 7px 12px;backdrop-filter:blur(16px)}
.landing-brand{height:54px;display:flex;align-items:center}.landing-brand img{width:156px;height:auto;display:block}
.landing-nav-links{margin-left:auto;display:flex;align-items:center;gap:28px}.landing-nav-links a{text-decoration:none;font-size:14px;font-weight:800;color:#71472b;position:relative;padding:20px 0}
.landing-nav-links a::after{content:"";position:absolute;left:0;right:0;bottom:13px;height:3px;border-radius:3px;background:#e99a09;transform:scaleX(0);transition:.2s}.landing-nav-links a:hover::after,.landing-nav-links a.active::after{transform:scaleX(1)}
.landing-hero{position:relative;min-height:780px;overflow:hidden;isolation:isolate}
.landing-scenery{position:absolute;inset:0;background:url("/assets/scene.svg") center 45%/cover no-repeat;z-index:-4}
.landing-hero-overlay{position:absolute;inset:0;z-index:-3;background:linear-gradient(90deg,rgba(255,250,230,.91) 0%,rgba(255,250,230,.76) 31%,rgba(255,250,230,.08) 62%,rgba(255,250,230,0) 100%),linear-gradient(180deg,rgba(255,255,255,.12),rgba(251,239,210,.08))}
.landing-hero-grid{min-height:780px;display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:34px;padding-top:92px}
.landing-copy{max-width:620px;padding:28px 0 40px}.hero-wordmark{width:min(420px,82%);display:block;margin:-12px auto 0 0;filter:drop-shadow(0 10px 14px rgba(93,48,5,.15))}
.landing-kicker{display:inline-block;margin:5px 0 14px;padding:8px 14px;border-radius:999px;background:rgba(255,253,244,.73);border:1px solid rgba(159,98,17,.24);backdrop-filter:blur(12px);font-weight:900;color:#865120;font-size:13px}
.landing-copy h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(40px,5vw,64px);line-height:1.01;letter-spacing:-.035em;margin:10px 0 16px;text-shadow:0 2px 0 rgba(255,255,255,.65)}
.landing-lead{font-size:18px;line-height:1.62;max-width:590px;color:#704a32;text-shadow:0 1px 0 rgba(255,255,255,.65)}
.store-row{display:flex;gap:13px;flex-wrap:wrap;margin-top:28px}.store-badge{min-width:190px;height:58px;padding:7px 16px;border-radius:16px;background:#171515;color:white;border:2px solid #d89414;box-shadow:0 7px 18px rgba(74,45,19,.18);display:flex;align-items:center;gap:11px}
.store-badge small{display:block;font-size:10px;opacity:.82;line-height:1}.store-badge strong{display:block;font-size:21px;line-height:1.05;letter-spacing:-.02em}.store-icon{font-size:35px;line-height:1}.play-triangle{font-size:28px;color:#72d768}
.phone-stage{position:relative;height:635px;align-self:end}.phone{position:absolute;bottom:48px;width:282px;filter:drop-shadow(0 30px 22px rgba(64,37,14,.30));transition:transform .25s ease}.phone img{width:100%;display:block}
.phone-left{left:18px;transform:rotate(-5deg)}.phone-right{right:-8px;bottom:24px;transform:rotate(4deg)}.phone:hover{transform:translateY(-7px) rotate(0)}
.hero-fade{position:absolute;left:0;right:0;bottom:-1px;height:100px;background:linear-gradient(180deg,transparent,#fff3d7)}
.paper-section{position:relative;background:linear-gradient(180deg,#fff5dc,#ffefd0);border-top:1px solid rgba(167,101,27,.18);border-bottom:1px solid rgba(167,101,27,.15)}
.paper-section::before{content:"";position:absolute;inset:0;opacity:.26;pointer-events:none;background-image:radial-gradient(rgba(143,88,32,.14) .8px,transparent .8px);background-size:10px 10px}
.modes-section{padding:56px 0 60px}.feature-section{padding:50px 0 66px;background:linear-gradient(180deg,#ffefd0,#fff5dc)}
.section-heading{position:relative;text-align:center;margin-bottom:28px}.section-heading h2{font-family:Georgia,"Times New Roman",serif;font-size:44px;margin:0 12px 4px;display:inline-block;letter-spacing:-.02em}.section-heading p{margin:0;color:#795338;font-size:17px}.section-heading .ornament{font-size:26px;color:#c57b19;vertical-align:8px}.section-heading.compact{margin-bottom:24px}
.mode-grid{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.mode-card{overflow:hidden;border-radius:28px;background:linear-gradient(180deg,#fffdf6,#fff5dd);border:2px solid #e5b75b;box-shadow:0 13px 24px rgba(114,67,19,.13);min-height:395px}
.mode-art{height:176px;position:relative;overflow:hidden;background:linear-gradient(180deg,#8cd7ff,#dff5ff 58%,#f1d698 59%,#efd09a 100%);border-bottom:1px solid #e1bf80}
.mode-art::before{content:"";position:absolute;left:-10%;right:-10%;bottom:0;height:64px;background:linear-gradient(160deg,transparent 25%,#6ca14c 26% 52%,transparent 53%),linear-gradient(20deg,transparent 25%,#87b55b 26% 55%,transparent 56%);opacity:.85}
.level-art .signpost{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%) rotate(-2deg);background:#ad6b30;color:#fff2c7;border:4px solid #6c3b19;border-radius:10px;padding:10px 25px;font-weight:1000;letter-spacing:.08em;box-shadow:0 7px 0 #77441f}
.survival-art .trophy{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);font-size:86px;filter:drop-shadow(0 8px 5px rgba(95,55,8,.25))}.friends-art .friends{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);font-size:84px;filter:drop-shadow(0 8px 5px rgba(95,55,8,.18))}
.mini-flower,.spark{position:absolute;color:#f36fa4;font-size:34px}.f1{left:20px;top:25px}.f2{right:25px;bottom:20px}.spark{color:#ffd21f}.s1{left:63px;top:30px}.s2{right:62px;bottom:35px}
.mode-body{text-align:center;padding:22px 24px 25px}.mode-body h3{font-family:Georgia,"Times New Roman",serif;font-size:28px;margin:0 0 8px}.mode-body p{color:#795338;line-height:1.55;margin:0 auto 18px;max-width:310px}.gold-pill{display:inline-flex;min-width:190px;justify-content:center;padding:10px 18px;border-radius:999px;background:linear-gradient(#ffe559,#ffb20b);border:2px solid #b96806;box-shadow:inset 0 2px rgba(255,255,255,.72),0 5px 12px rgba(137,78,4,.18);font-weight:900;color:#713a07}
.feature-grid{position:relative;display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.feature-card{position:relative;text-align:center;background:rgba(255,251,239,.86);border:1px solid #e4c592;border-radius:24px;padding:22px 14px 20px;min-height:245px;box-shadow:0 9px 18px rgba(114,67,19,.09)}
.feature-icon{font-size:48px;line-height:1;margin-bottom:10px}.feature-card h3{font-family:Georgia,"Times New Roman",serif;font-size:20px;margin:0 0 9px}.feature-card p{font-size:14px;line-height:1.45;color:#765238;margin:0}.coming{display:inline-flex;margin-top:10px;padding:5px 10px;border-radius:999px;background:#ffe4a7;color:#8b5d14;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.support-banner-wrap{padding:34px 0;background:linear-gradient(180deg,#fff5dc,#f5d9b5)}
.support-banner{min-height:185px;border-radius:30px;padding:32px 38px;display:flex;align-items:center;justify-content:space-between;gap:26px;background:linear-gradient(90deg,rgba(255,253,244,.95),rgba(255,248,226,.82)),url("/assets/scene.svg") center 65%/cover;border:2px solid rgba(201,138,54,.42);box-shadow:0 13px 25px rgba(88,50,15,.12);overflow:hidden}.support-banner h2{font-family:Georgia,"Times New Roman",serif;font-size:34px;margin:4px 0 7px}.support-banner p{margin:0 0 18px;color:#755038;max-width:650px}.gold-button{display:inline-flex;align-items:center;gap:8px;text-decoration:none;padding:11px 20px;border-radius:999px;background:linear-gradient(#ffe55a,#ffaf08);border:2px solid #b96806;box-shadow:inset 0 2px rgba(255,255,255,.72),0 6px 14px rgba(137,78,4,.17);font-weight:900;color:#6e3909}.sleepy-cat{font-size:96px;filter:drop-shadow(0 10px 8px rgba(99,58,20,.15))}
.landing-footer{background:linear-gradient(180deg,#684429,#4b2f1c);color:#fff5df;padding:22px 0}.landing-footer-row{display:grid;grid-template-columns:180px 1fr auto;align-items:center;gap:30px}.footer-logo{width:150px}.landing-footer nav{display:flex;justify-content:center;gap:27px}.landing-footer a{text-decoration:none;color:#fff6e6;font-weight:750;font-size:13px}.landing-footer a:hover{text-decoration:underline}.copyright{font-size:12px;opacity:.72}

@media(max-width:980px){
 .landing-nav-links{gap:15px}.landing-nav-links a{font-size:12px}
 .landing-hero-grid{grid-template-columns:1fr;min-height:980px;text-align:center;padding-top:105px}.landing-copy{margin:0 auto}.hero-wordmark{margin:0 auto}.phone-stage{height:450px;width:min(680px,100%);margin:0 auto}.phone{width:220px}.phone-left{left:calc(50% - 210px)}.phone-right{right:calc(50% - 210px)}
 .mode-grid{grid-template-columns:1fr}.mode-card{display:grid;grid-template-columns:220px 1fr;min-height:0}.mode-art{height:100%}.mode-body{text-align:left;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
 .feature-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:720px){
 .wrap{width:min(100% - 24px,1160px)}
 .landing-nav-shell{top:10px}.landing-nav{height:58px;border-radius:19px;padding-right:12px}.landing-brand img{width:126px}.landing-nav-links a{display:none}.landing-nav-links a[href="/support/"]{display:block;padding:18px 0}
 .landing-hero{min-height:850px}.landing-hero-grid{min-height:850px;padding-top:90px}.landing-copy h1{font-size:40px}.landing-lead{font-size:16px}.store-row{justify-content:center}.store-badge{min-width:162px;height:52px;padding:7px 12px}.store-badge strong{font-size:17px}
 .phone-stage{height:360px}.phone{width:176px}.phone-left{left:calc(50% - 168px)}.phone-right{right:calc(50% - 168px);bottom:10px}
 .section-heading h2{font-size:36px}.section-heading .ornament{display:none}
 .mode-card{display:block}.mode-art{height:165px}.mode-body{text-align:center;align-items:center}
 .feature-grid{grid-template-columns:1fr 1fr}.feature-card{min-height:215px}
 .support-banner{padding:28px 24px}.sleepy-cat{display:none}.support-banner h2{font-size:28px}
 .landing-footer-row{grid-template-columns:1fr;text-align:center}.footer-logo{margin:0 auto}.landing-footer nav{flex-wrap:wrap;gap:15px}.copyright{margin-top:-10px}
 .nav-links a:not(:last-child){display:none}.footer-row{flex-direction:column;align-items:flex-start}
}
@media(max-width:460px){
 .feature-grid{grid-template-columns:1fr}.feature-card{min-height:0}
 .phone{width:156px}.phone-left{left:calc(50% - 148px)}.phone-right{right:calc(50% - 148px)}
 .store-row{flex-direction:column;align-items:center}.store-badge{width:210px}
}
