/* Production homepage only; unlisted design previews keep their original layout. */
.landing-refresh .scene{min-height:0}
.landing-refresh .masthead{gap:24px}
/* Live community proof belongs beside the invitation to play. */
.player-presence{display:flex;align-items:center;align-self:flex-start;gap:10px;margin-top:18px;padding:0;color:#e8d7f3;max-width:100%;min-height:26px}
.player-presence[hidden]{display:none}
.presence-dot{width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:#cf94f3;box-shadow:0 0 0 4px #bf7bee14,0 0 12px #b977e14d}
.presence-copy{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 12px;min-width:0}
.player-presence strong{display:inline;font-size:13px;line-height:1.6;font-weight:500}
.player-presence [data-online-count]{font-size:17px;font-weight:700;font-variant-numeric:tabular-nums;color:#f4e5ff}
.player-presence small{display:inline;font-size:11px;line-height:1.6;color:#b9a6c8}
.player-presence.is-quiet .presence-dot{background:#a293ae;box-shadow:none}
.hero-entry{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:26px}
.hero-play{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;width:auto;min-width:190px;padding:17px 24px;text-decoration:none;font-size:16px;color:#fff}
.hero-signup{font-size:14px;font-weight:700;color:#f1d8ff;text-underline-offset:5px}
.hero-reassurance{font-size:12px;line-height:1.6;color:#d0bedc;margin:14px 0 0}
.landing-refresh .main-content{max-width:1500px;margin:auto;padding:54px 4% 48px;gap:56px;align-items:center;grid-template-columns:minmax(0,1fr) 390px;background:linear-gradient(0deg,#0a090ff2,#0a090f40)}
.landing-refresh .pitch{min-height:0;padding:0;justify-content:center}
.landing-refresh .pitch h1{font-size:clamp(76px,7.5vw,108px);margin:18px 0 22px}
.landing-refresh .intro{max-width:520px;font-size:17px;line-height:1.8;color:#f0e7f5;margin:0}
.landing-refresh .scene-chapter{margin-top:24px}
.landing-refresh .features{margin-top:16px}
.landing-refresh .auth{width:100%;padding:28px;scroll-margin-top:24px}
.landing-refresh .auth h2{font-size:29px;line-height:1.15}
.landing-refresh .welcome{line-height:1.65;color:#d4c6df}
.landing-refresh .guest-intro{margin-bottom:0}
.landing-refresh .guest-benefits{margin:14px 0 20px;gap:6px}
.landing-refresh .guest-benefits span{font-size:10px;padding:5px 8px}
.guest-entry-button{display:flex;align-items:center;justify-content:space-between;gap:10px;list-style:none;text-align:left;cursor:pointer;padding:15px 18px;box-sizing:border-box}
.guest-entry-button::-webkit-details-marker{display:none}
.guest-entry-button::marker{content:''}
.guest-setup[open] .guest-entry-button span{transform:rotate(90deg)}
.guest-setup-fields{padding:18px 0 6px}
.landing-refresh .guest-setup-fields label{margin-top:0}
.guest-signup{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;min-height:52px;border:1px solid #a980c2;border-radius:5px;color:#f8efff!important;font-size:14px;font-weight:700;text-decoration:none;margin-top:12px;background:#a965d20c}
.guest-signup:hover{background:#a965d221;border-color:#e0b5ff}
.guest-account-benefit{color:#c5b3d1;font-size:11px;line-height:1.6;margin:8px 0 18px}
.landing-refresh .guest-save-line{font-size:11px;color:#b9a9c5}
.landing-refresh .guest-login{margin-bottom:0}
.landing-refresh .auth-footer{margin-top:18px;padding-top:16px}
.gameplay-jump{display:inline-flex;gap:12px;align-items:center;align-self:flex-start;margin-top:18px;color:#f1d8ff;text-decoration:none;font-size:14px;font-weight:700;padding:9px 0;border-bottom:1px solid #c78af273}
.gameplay-jump>span:first-child{border:1px solid #d7abf2;border-radius:50%;height:30px;width:30px;display:grid;place-items:center;font-size:12px;padding-left:2px}
.gameplay-jump:hover,.gameplay-link:hover{color:#fff}
.landing-refresh .club-sign{display:none}
.landing-refresh .billboards{display:flex;flex-wrap:wrap;gap:18px;height:auto;min-height:0;margin:0;padding:18px 4%;background:#0b0915;border-top:1px solid #c88cff24;border-bottom:1px solid #c88cff24}
.landing-refresh .billboards[hidden]{display:none}
.landing-refresh .billboard,.landing-refresh .billboard:nth-child(2),.landing-refresh .billboard:nth-child(3){position:static;inset:auto;transform:none;clip-path:none;filter:none;overflow:visible;flex:1;min-width:220px;width:auto;display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:0;text-align:left;background:none;border:0;box-shadow:none}
.landing-refresh .billboard::before,.landing-refresh .billboard::after{display:none}
.landing-refresh .billboard .sample,.landing-refresh .billboard time{display:none}
.landing-refresh .billboard b{font:700 12px/1.5 Arial,sans-serif;letter-spacing:.1em;margin:0;color:#e3bbf5;white-space:nowrap;text-shadow:none}
.landing-refresh .billboard p{font-size:14px;line-height:1.5;margin:0;color:#eee1f6}
.gameplay-section,.entry-faq{padding:80px 4%;max-width:1500px;margin:auto;scroll-margin-top:28px}
.gameplay-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:35px}
.gameplay-heading h2,.rookie-invitation h2,.entry-faq h2{font:700 clamp(32px,3.7vw,54px)/1.12 Georgia,serif;letter-spacing:-.035em;margin:14px 0 0;color:#f8f1fc}
.gameplay-heading h2 em{font-style:normal;color:#d2a1ed}
.gameplay-heading>p{max-width:410px;color:#bdaecb;line-height:1.8;font-size:15px;margin:0 0 4px}
.gameplay-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.gameplay-card{min-width:0;border:1px solid #ad73cb33;border-radius:12px;overflow:hidden;background:linear-gradient(160deg,#1a1222,#100d16)}
.gameplay-visual{position:relative;display:block;padding:52px 30px 45px;background:#100b1c url('gameplay/neon-frame.webp') center/cover no-repeat;isolation:isolate;text-decoration:none;color:#ead7f7;overflow:hidden}
.gameplay-visual img{position:relative;display:block;width:100%;height:auto;border:1px solid #d48df077;border-radius:5px;box-shadow:0 0 30px #b542ff35,0 20px 32px #0009;transition:transform .25s,box-shadow .25s}
.gameplay-visual:hover img{transform:translateY(-3px);box-shadow:0 0 35px #b542ff60,0 22px 35px #0009}
.gameplay-visual--training img{border-color:#96c6ee66;box-shadow:0 0 30px #6095fb30,0 20px 32px #0009}
.screen-label{position:absolute;left:30px;top:21px;font-size:10px;letter-spacing:.19em;color:#e7c6f6}
.screen-expand{position:absolute;bottom:15px;right:30px;display:flex;gap:8px;align-items:center;font-size:11px;color:#e6d1f2}
.gameplay-caption{padding:26px 28px 30px;border-top:1px solid #c88cff24}
.gameplay-tag{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:#d8aeeb}
.gameplay-caption h3{font:700 30px/1.2 Georgia,serif;letter-spacing:-.025em;margin:12px 0}
.gameplay-caption p{color:#c1b1ce;line-height:1.8;font-size:14px;margin:0;max-width:490px}
.gameplay-note{color:#ab99b8;font-size:11px;line-height:1.6;margin:16px 0 0}
.rookie-invitation{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:60px 0 0;margin-top:60px;border-top:1px solid #b37cc334}
.rookie-invitation h2{font-size:40px}
.rookie-invitation>div>p{max-width:470px;font-size:15px;line-height:1.8;color:#c0afcd;margin:22px 0}
.gameplay-link{display:inline-flex;gap:22px;align-items:center;font-weight:700;color:#e4baf9;font-size:14px;text-underline-offset:6px}
.first-moves{list-style:none;margin:0;padding:0}
.first-moves li{display:flex;gap:20px;padding:21px 0;border-bottom:1px solid #b37cc324}
.first-moves li:first-child{padding-top:0}
.first-moves li>span{font:italic 24px Georgia,serif;color:#bd8cd5;min-width:30px}
.first-moves strong{font-size:16px;color:#eee1f6}
.first-moves p{font-size:14px;line-height:1.7;color:#bbaac8;margin:8px 0 0}
.entry-faq{display:grid;grid-template-columns:1fr 1.25fr;gap:80px;padding-top:0;padding-bottom:80px}
.entry-faq h2{font-size:32px;max-width:280px}
.entry-faq details{border-bottom:1px solid #b37cc334;padding:18px 0}
.entry-faq details:first-child{padding-top:0}
.entry-faq summary{cursor:pointer;font-size:15px;font-weight:700;color:#e8ddef;line-height:1.6}
.entry-faq p{font-size:14px;line-height:1.8;color:#bdaccb;margin:14px 0 4px}
.gameplay-dialog{width:min(1160px,94vw);max-width:94vw;max-height:94vh;border:1px solid #b07bd3;border-radius:10px;padding:16px;background:#110d19;color:#f0e6f6;box-shadow:0 30px 100px #000b;overflow:auto}
.gameplay-dialog::backdrop{background:#050309e8;backdrop-filter:blur(7px)}
.gameplay-dialog-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px}
.gameplay-dialog-bar p{font-size:13px;margin:0;line-height:1.6}
.gameplay-dialog button{font:inherit;font-size:13px;white-space:nowrap;padding:10px 14px;border:1px solid #9970b0;border-radius:5px;background:#25182f;color:#fff;cursor:pointer}
.gameplay-dialog img{display:block;width:100%;height:auto}
.landing-refresh :is(a,button,summary):focus-visible{outline:3px solid #e9b9ff;outline-offset:5px}
@media(max-width:1000px){
 .landing-refresh .masthead{flex-wrap:wrap;height:auto;min-height:114px;padding-top:16px;padding-bottom:16px;gap:14px}
 .landing-refresh .main-content{padding-top:48px;gap:30px;grid-template-columns:minmax(0,1fr) 350px}
 .landing-refresh .pitch h1{font-size:82px}
 .landing-refresh .intro{font-size:15px}
 .gameplay-visual{padding:46px 18px 40px}
 .screen-label{left:18px}.screen-expand{right:18px}
 .rookie-invitation,.entry-faq{gap:36px}
}
@media(max-width:700px){
 .landing-refresh .masthead{height:auto;min-height:80px;padding:10px 5%;gap:10px}
 .player-presence{margin-top:14px;gap:9px}
 .presence-copy{gap:1px 10px}
 .player-presence small{font-size:11px}
 .hero-entry{gap:16px;margin-top:18px}
 .hero-play{min-width:160px;padding:15px 20px}
 .hero-signup{font-size:13px}
 .hero-reassurance{font-size:11px}
 .landing-refresh .brand img{width:46px;height:46px}
 .landing-refresh .wordmark{font-size:22px}
 .landing-refresh .brand small{font-size:6px}
 .landing-refresh .masthead nav{gap:15px;font-size:11px}
 .landing-refresh .masthead nav .nav-login{display:inline-block;white-space:nowrap;padding:12px 0}
 .landing-refresh .masthead nav .nav-join{display:none}
 .landing-refresh .main-content{padding:26px 5% 30px;gap:28px;display:flex;background:linear-gradient(0deg,#0a090ffa,#0a090f66)}
 .landing-refresh .pitch{order:0;min-height:0;width:100%;padding:0}
 .landing-refresh .pitch h1{font-size:60px;line-height:.98;margin:14px 0 18px}
 .landing-refresh .pitch h1 br{display:none}
 .landing-refresh .pitch h1 em{display:block}
 .landing-refresh .pitch .eyebrow{font-size:9px}
 .landing-refresh .intro{max-width:100%;font-size:14px;line-height:1.75}
 .landing-refresh .intro br{display:none}
 .landing-refresh .features,.landing-refresh .scene-chapter{display:none}
 .gameplay-jump{margin-top:16px;font-size:13px;padding:5px 0}
 .gameplay-jump>span:first-child{height:24px;width:24px}
 .landing-refresh .auth{order:1;padding:23px}
 .landing-refresh .auth h2{font-size:27px}
 .landing-refresh .auth-footer{display:none}
 .landing-refresh .welcome{font-size:13px;margin-bottom:0}
 .landing-refresh .billboards{padding:14px 5%;gap:12px}
 .landing-refresh .billboard,.landing-refresh .billboard:nth-child(2),.landing-refresh .billboard:nth-child(3){flex:1 0 100%;gap:12px;min-width:0}
 .landing-refresh .billboard p{font-size:13px}
 .gameplay-section,.entry-faq{padding:48px 5%}
 .gameplay-heading{display:block;margin-bottom:24px}
 .gameplay-heading h2{font-size:38px}
 .gameplay-heading>p{font-size:14px;margin-top:20px}
 .gameplay-heading>p br{display:none}
 .gameplay-grid{grid-template-columns:1fr;gap:24px}
 .gameplay-visual{padding:42px 16px 38px}
 .screen-label{left:16px;top:17px;font-size:9px}.screen-expand{right:16px;bottom:13px;font-size:10px}
 .gameplay-caption{padding:23px}.gameplay-caption h3{font-size:29px}
 .gameplay-caption p{font-size:13px}
 .rookie-invitation{grid-template-columns:1fr;gap:30px;padding-top:38px;margin-top:38px}
 .rookie-invitation h2{font-size:34px}.rookie-invitation>div>p{font-size:14px}
 .entry-faq{grid-template-columns:1fr;gap:24px;padding-top:0}
 .entry-faq h2{max-width:none}
 .gameplay-dialog{padding:12px}
 .gameplay-dialog-bar{gap:12px}.gameplay-dialog-bar p{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.gameplay-visual img{transition:none}.gameplay-visual:hover img{transform:none}}

.landing-refresh .billboard[hidden]{display:none}
