/* Public landing only. Native document scroll; existing auth and signed-in shell remain authoritative. */
#view-public .gpf-story{padding-top:var(--nav-h);background:linear-gradient(110deg,#101319b8,#1013197a)}
.gpf-story-scene{position:relative;max-width:1440px;margin:auto;padding:45px 6%;}
.gpf-story-art{display:none;pointer-events:none}
.gpf-story-panel{max-width:540px;padding:36px 0}
.gpf-story-kicker{font-size:.7rem;letter-spacing:2.4px;text-transform:uppercase;color:#6de2df;margin:0 0 24px}
.gpf-story-title{font-size:clamp(2.5rem,5.1vw,4.9rem);line-height:1.06;letter-spacing:-.045em;font-weight:750;margin:0 0 24px;overflow-wrap:normal}
.gpf-story-title span{display:block;color:#b0a3f8}
.gpf-story-desc{font-size:1rem;line-height:1.8;color:var(--text2);max-width:410px;margin:0 0 25px}
.gpf-story-tags{display:flex;flex-wrap:wrap;gap:8px}
.gpf-story-tags span{padding:7px 12px;border:1px solid #394152;border-radius:24px;font-size:.74rem;color:#c7cede;background:#1b2029}
.gpf-story-cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.gpf-story-cta .btn{border-radius:24px}
.gpf-story-cue{display:none;color:var(--text3);font-size:.7rem;letter-spacing:1.4px;text-transform:uppercase;align-items:center;gap:12px}
.gpf-story-cue span:first-child{font-size:1.25rem;color:#7fe2df}
.gpf-story-enhanced .gpf-story-track{height:calc(560 * var(--gpf-story-vh, 1svh));position:relative}
.gpf-story-enhanced .gpf-story-scene{position:sticky;top:var(--nav-h);height:calc(100 * var(--gpf-story-vh, 1svh) - var(--nav-h));min-height:510px;padding:0;overflow:hidden;background:radial-gradient(ellipse at 73% 43%,#332c4c77,transparent 60%)}
.gpf-story-enhanced .gpf-story-art{display:block;position:absolute;right:0;top:5%;width:58%;height:80%}
.gpf-story-art canvas{width:100%;height:100%;display:block}
.gpf-story-enhanced .gpf-story-panels{position:absolute;left:6%;top:0;bottom:0;width:44%;display:grid;align-items:center;padding-bottom:50px}
.gpf-story-enhanced .gpf-story-panel{grid-area:1/1;padding:0;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(16px);transition:opacity .24s,transform .35s,visibility .24s}
.gpf-story-enhanced .gpf-story-panel.is-active{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.gpf-story-enhanced .gpf-story-cue{display:flex;position:absolute;bottom:30px;left:6%}
#view-public .gpf-story-after{max-width:1100px;margin:auto;padding:35px 24px 65px}
#view-public .gpf-story-after .stats-row{justify-content:center;margin:0 auto 50px;padding:28px 10px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
#view-public .gpf-story-after .stats-row .stat-num{font-size:2rem}
body.gpf-public-story .navbar{background:#11151df5}
body.gpf-public-story #nav-auth-btns{gap:9px;align-items:center;flex-wrap:nowrap}
body.gpf-public-story #nav-auth-btns .btn{border-radius:24px;min-height:44px;margin-left:0!important;white-space:nowrap}
@media(max-width:700px){
 body.gpf-public-story .navbar{gap:8px;padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}
 body.gpf-public-story .navbar .logo img{max-width:86px;height:auto!important;max-height:40px}
 body.gpf-public-story .navbar .nav-right{gap:6px}
 body.gpf-public-story #nav-auth-btns{gap:6px}
 body.gpf-public-story #nav-auth-btns .btn{font-size:.75rem;padding:8px 12px}
 body.gpf-public-story .navbar>.nav-right>.gpf-install{display:none}
 .gpf-story-enhanced .gpf-story-art{width:100%;height:43%;top:0;right:0}
 .gpf-story-enhanced .gpf-story-panels{left:7%;right:7%;top:42%;bottom:45px;width:auto;align-items:start;padding:0}
 .gpf-story-title{font-size:clamp(2rem,8.2vw,3rem);letter-spacing:-.04em;margin-bottom:16px}
 .gpf-story-kicker{font-size:.64rem;margin-bottom:13px;letter-spacing:2px}
 .gpf-story-desc{font-size:.88rem;line-height:1.65;max-width:none;margin-bottom:18px}
 .gpf-story-tags{gap:6px}.gpf-story-tags span{font-size:.68rem;padding:6px 10px}
 .gpf-story-cta{margin-top:18px}.gpf-story-cta .btn{font-size:.78rem;padding:10px 16px}
 .gpf-story-enhanced .gpf-story-cue{left:7%;bottom:15px;font-size:.62rem}
 #view-public .gpf-story-after{padding:25px 16px 40px}
}
@media(max-height:720px) and (max-width:700px){
 .gpf-story-enhanced .gpf-story-art{height:35%}
 .gpf-story-enhanced .gpf-story-panels{top:34%;bottom:32px}
 .gpf-story-title{font-size:2rem;margin-bottom:12px}
 .gpf-story-kicker{margin-bottom:10px}.gpf-story-desc{font-size:.8rem;margin-bottom:12px}
 .gpf-story-cta{margin-top:13px}.gpf-story-tags span{padding:4px 8px}
}
@media(max-height:540px) and (min-width:701px){
 .gpf-story-enhanced .gpf-story-scene{min-height:400px}
 .gpf-story-title{font-size:2.5rem}.gpf-story-desc{font-size:.85rem;margin-bottom:14px}.gpf-story-kicker{margin-bottom:12px}
 .gpf-story-cta{margin-top:14px}
}
@media(prefers-reduced-motion:reduce){.gpf-story-enhanced .gpf-story-panel{transition:none;transform:none}}

/* Keep game covers legible on the public story, with a darker reading area. */
body.gpf-public-story .gpf-game-grid{opacity:1;filter:saturate(.82)}
body.gpf-public-story .gpf-game-background::after{background:linear-gradient(180deg,#10131926 0%,#10131966 65%,#101319a8 100%),linear-gradient(90deg,#1013196b,transparent 75%)}
@media(max-width:700px){
 #view-public .gpf-story{background:linear-gradient(180deg,#10131970 0%,#101319a6 45%,#101319bf 100%)}
}
