:root{color-scheme:light;--paper:#ecf0f4;--ink:#334255;--muted:#577091;--accent:#4e6582;--soft:#adbacb;--line:#cbd3de;--serif:Georgia,"Noto Serif SC","Source Han Serif SC","Songti SC","STSong","SimSun",serif;font-family:"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;position:relative;isolation:isolate}body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:url("./paper-grain.svg");opacity:.29}.page-wash{position:absolute;inset:0 0 auto;height:1100px;background:url("./watercolor-wash.svg") center top/cover no-repeat;pointer-events:none;z-index:-2;opacity:.82}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #4b607c;outline-offset:6px}::selection{background:#bdc8d6;color:#2a3747}.site-shell{max-width:1400px;margin:auto;padding:0 68px}.site-header{height:108px;display:flex;align-items:center;gap:64px}.brand{display:flex;align-items:center;gap:16px;flex-shrink:0}.brand img{display:block;width:91px;height:auto}.brand-label{font-size:9px;font-weight:600;letter-spacing:2.5px;border-left:1px solid #9aacc3;padding:7px 0 7px 16px;color:#4d6380}nav{display:flex;gap:7px;align-items:center;font-size:12px}nav a{display:flex;gap:18px;align-items:center;justify-content:center;min-height:40px;min-width:71px;padding:0 18px;color:#4b617e;border:1px solid transparent;border-radius:24px;transition:background .2s}nav a[aria-current]{background:#ffffff85;border-color:#ffffffc4;box-shadow:0 2px 8px #42566f04;color:#364559}nav a:hover{background:#ffffff9c}nav a span{font-size:16px}.header-note{margin-left:auto;display:flex;align-items:center;gap:11px;color:#556e8e;font-size:11px;letter-spacing:1px}.little-spark{font-size:22px;line-height:1;font-weight:300;color:#6e87a8}h1{font-family:var(--serif);font-size:clamp(46px,4.2vw,60px);font-weight:500;letter-spacing:2px;line-height:1.4;margin:25px 0 19px}.games-section{padding:45px 0 25px;scroll-margin-top:25px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:23px}.section-kicker{font-size:8px;letter-spacing:2px;color:#647fa2;margin:0 0 10px;font-weight:500}.section-kicker>span{color:#8197b3;margin-right:11px}h2{font-family:var(--serif);font-weight:500;font-size:27px;letter-spacing:1px;margin:0}.game-count{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.5px;color:#597394;padding-bottom:5px}.status-dot{width:5px;height:5px;background:#718aaa;border-radius:50%;box-shadow:0 0 0 4px #dde3ea}.collection-grid{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(280px,1fr);gap:24px}.game-entry{position:relative;display:grid;grid-template-columns:minmax(190px,.95fr) minmax(235px,1.1fr);align-items:stretch;min-width:0;min-height:299px;padding:10px;border:1px solid #ffffffed;border-radius:19px;background:#fbfcfd9c;box-shadow:0 9px 34px -25px #5872936b;transition:box-shadow .25s,transform .25s}.game-entry::before{content:"";position:absolute;inset:9px 8px -7px;background:#d8dfe7a6;border:1px solid #ecf0f4;z-index:-1;border-radius:20px;transform:rotate(-.8deg)}.game-entry:hover{box-shadow:0 17px 36px -22px #58729375;transform:translateY(-3px)}.game-thumbnail{position:relative;isolation:isolate;overflow:hidden;min-width:0;border-radius:12px;background:linear-gradient(150deg,#cfd7e1,#b0bdce 68%,#c8d1dd);border:1px solid #d3dae3}.game-thumbnail::before{content:"";position:absolute;width:270px;height:270px;border:1px solid #eff2f56e;border-radius:50%;left:-115px;top:-35px}.game-thumbnail::after{content:"";position:absolute;width:230px;height:230px;border:1px solid #eff2f54f;border-radius:50%;right:-96px;bottom:-128px}.thumbnail-heading{position:relative;z-index:1;display:flex;justify-content:space-between;padding:19px 18px;font-size:7px;letter-spacing:1.8px;color:#4d6380}.thumbnail-heading>span:last-child{font-family:var(--serif);font-size:12px;line-height:1}.game-thumbnail img{position:absolute;top:calc(50% - 163px);left:calc(50% - 166px);width:332px;height:332px;transform:rotate(-5deg);transition:transform .4s}.game-entry:hover .game-thumbnail img{transform:rotate(-2deg) translateY(-3px)}.thumbnail-bottom{position:absolute;bottom:16px;left:0;width:100%;text-align:center;font-size:6px;letter-spacing:1.6px;color:#4c627e}.game-info{padding:24px 19px 15px 27px;min-width:0}.game-category{font-size:9px;letter-spacing:1px;display:flex;align-items:center;gap:7px;color:#607b9f;margin:0 0 15px}.category-icon{font-size:14px}h3{font-family:var(--serif);font-weight:500;font-size:27px;letter-spacing:1px;margin:0 0 13px}.game-description{font-size:11px;color:#587294;line-height:1.9;margin:0 0 17px}.game-details{list-style:none;display:flex;flex-wrap:wrap;gap:5px;padding:0;margin:0 0 24px;color:#577091;font-size:9px}.game-details li{background:#e4e9efad;border:1px solid #dee3ea;border-radius:5px;padding:5px 7px;white-space:nowrap}.play-button{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:44px;max-width:205px;padding:0 15px;border:1px solid #98aac1;border-radius:7px;font-size:11px;color:#42556e;background:#f6f7f978;transition:background .2s,border-color .2s}.play-button:hover{background:#dce2e9;border-color:#6681a4}.play-button span{font-size:22px;font-weight:300;transition:transform .2s}.play-button:hover span{transform:translate(2px,-2px)}.welcome-card{position:relative;overflow:hidden;border-radius:19px;padding:24px 25px;background:linear-gradient(140deg,#dae1e9cf,#e1e6ec8f);border:1px solid #f8f9fae0;box-shadow:inset 0 1px 0 #ffffff99}.welcome-card::after{content:"";position:absolute;width:170px;height:170px;border:1px solid #c0cad770;border-radius:50%;right:-105px;top:12px;pointer-events:none}.welcome-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.welcome-icon{font-size:26px;line-height:1;color:#6a84a5}.welcome-top>span:last-child{font-size:7px;letter-spacing:1.3px;color:#5f7b9f}.welcome-card h3{font-size:24px;line-height:1.55;margin-bottom:20px}.welcome-steps{list-style:none;padding:0;margin:0;display:grid;gap:14px}.welcome-steps li{display:flex;gap:11px;align-items:flex-start}.step-number{width:23px;min-width:23px;height:23px;border:1px solid #b6c2d1;border-radius:50%;display:grid;place-items:center;font-family:var(--serif);font-size:9px;color:#617ca0}.welcome-steps strong{font-size:10px;font-weight:500;line-height:1.6}.welcome-steps p{font-size:9px;color:#566f8f;line-height:1.7;margin:3px 0 0;max-width:200px}.closing-note{display:flex;align-items:center;gap:15px;padding:27px 5px 32px;color:#637ea1}.closing-note>span:first-child{font-size:26px;color:#8499b5}.closing-note p{font-family:var(--serif);font-size:15px;letter-spacing:1px;line-height:1.7;margin:0;white-space:nowrap}.closing-note p>span{margin-left:8px;color:#4e6481}.closing-rule{flex:1;height:1px;background:linear-gradient(90deg,#b8c4d38c,transparent);margin-left:10px}.closing-note small{font-size:7px;letter-spacing:1.6px;color:#6f88a8;white-space:nowrap}footer{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid #cad3de;padding:12px 0 20px;font-size:8px;letter-spacing:1px;color:#637ea1}.footer-signoff{font-size:10px;letter-spacing:1px}footer a{display:flex;align-items:center;gap:17px;min-height:44px;font-size:9px}footer a:hover{color:#37475b}footer a span{font-size:17px}.skip-link{position:fixed;top:8px;left:16px;padding:12px 20px;background:#ffffff;color:#38485d;z-index:10;transform:translateY(-180%);border-radius:6px}.skip-link:focus{transform:translateY(0)}.error-page{padding-block:80px}.error-page h1{color:var(--ink)}.error-page p{color:var(--muted);line-height:1.8}.error-page .play-button{display:inline-flex;margin-top:20px}


@media(max-width:1150px){.site-shell{padding-inline:38px}.site-header{gap:38px}.game-info{padding:23px 14px 16px 21px}.collection-grid{grid-template-columns:minmax(0,2fr) minmax(255px,1fr);gap:18px}.game-entry{grid-template-columns:minmax(150px,.8fr) minmax(215px,1fr)}.game-thumbnail img{width:280px;height:280px;top:calc(50% - 140px);left:calc(50% - 140px)}.welcome-card{padding:22px 20px}.game-description{font-size:10px}.game-details{font-size:8px}.game-details li{padding-inline:5px}}
@media(max-width:900px){.header-note{display:none}.site-header{justify-content:space-between}h1{font-size:46px;letter-spacing:0}.collection-grid{grid-template-columns:1fr}.game-entry{grid-template-columns:42% 1fr;min-height:305px}.game-thumbnail img{width:335px;height:335px;top:calc(50% - 167px);left:calc(50% - 167px)}.game-info{padding:26px 27px}.game-description{font-size:12px}.game-details{font-size:9px}.game-details li{padding-inline:7px}.welcome-card{display:grid;grid-template-columns:180px 1fr;gap:12px 20px;padding:22px 27px}.welcome-top{grid-column:1;grid-row:1;margin:0}.welcome-top>span:last-child{font-size:6px}.welcome-card h3{grid-column:1;grid-row:2;margin:0;font-size:21px;align-self:start}.welcome-steps{grid-column:2;grid-row:1/3;gap:13px;padding-left:25px;border-left:1px solid #c4ceda}.welcome-steps strong{font-size:11px}.welcome-steps p{font-size:10px;max-width:none}.closing-note small{display:none}}
@media(max-width:600px){.site-shell{padding-inline:20px}.site-header{height:85px;gap:14px}.brand{gap:12px}.brand img{width:74px}.brand-label{padding-left:12px;font-size:7px;letter-spacing:1.5px}nav{gap:0;font-size:10px}nav a{padding:0 12px;gap:10px;min-width:auto;min-height:38px}h1{font-size:45px;line-height:1.43;letter-spacing:1px;margin:22px 0 19px}.games-section{padding-top:32px}.section-heading{margin-bottom:20px;gap:15px}.section-kicker{font-size:7px;letter-spacing:1.4px;margin-bottom:10px}.section-kicker>span{margin-right:6px}h2{font-size:24px}.game-count{font-size:8px;gap:6px;letter-spacing:0;white-space:nowrap;padding-bottom:4px}.status-dot{width:4px;height:4px;box-shadow:0 0 0 3px #dde3ea}.collection-grid{gap:23px}.game-entry{display:block;padding:9px;min-height:0;border-radius:18px}.game-thumbnail{height:225px;border-radius:11px}.game-thumbnail img{width:292px;height:292px;top:calc(50% - 151px);left:calc(50% - 146px)}.thumbnail-heading{padding:17px 18px;font-size:7px}.thumbnail-bottom{bottom:12px;font-size:6px}.game-info{padding:24px 16px 17px}.game-category{font-size:9px;margin-bottom:12px}.game-info h3{font-size:28px;margin-bottom:13px}.game-description{font-size:12px;line-height:1.85;margin-bottom:15px}.game-details{margin-bottom:22px;font-size:9px;gap:7px}.game-details li{padding:5px 8px}.play-button{max-width:none;min-height:46px;font-size:12px;padding:0 17px}.welcome-card{padding:23px 24px;display:block;border-radius:18px}.welcome-top{margin-bottom:13px}.welcome-top>span:last-child{font-size:7px}.welcome-card h3{font-size:23px;margin:0 0 21px}.welcome-card h3 br{display:none}.welcome-steps{padding:0;border:0;gap:17px}.welcome-steps strong{font-size:12px}.welcome-steps p{font-size:11px;margin-top:3px}.step-number{width:26px;min-width:26px;height:26px;font-size:10px}.closing-note{padding:9px 2px 24px;gap:11px}.closing-note>span:first-child{font-size:25px}.closing-note p{font-size:13px;white-space:normal}.closing-note p>span{display:block;margin:0}.closing-rule{margin:0}footer{font-size:7px;letter-spacing:.6px;padding:9px 0 16px;gap:10px}.footer-signoff{display:none}footer a{font-size:9px;gap:12px}.page-wash{height:1700px;background-size:auto 1300px}}
@media(max-width:370px){.site-shell{padding-inline:15px}.brand-label{display:none}h1{font-size:40px}.section-heading{gap:8px}h2{font-size:22px}.game-count{font-size:7px}.game-thumbnail{height:205px}.game-thumbnail img{width:270px;height:270px;top:calc(50% - 141px);left:calc(50% - 135px)}.welcome-card{padding:22px}.welcome-card h3{font-size:21px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}/* Keep the quiet palette readable and the main actions comfortable to use. */
.intro,.game-description,.welcome-card .welcome-steps p,.game-category,.game-count,.game-details,.section-kicker,.header-note{color:#4b617d}.closing-note,footer{color:#4e6582}nav{font-size:13px}nav a{min-height:44px}.header-note{font-size:12px}.section-kicker{font-size:10px}.game-count{font-size:12px}.game-category{font-size:12px}.game-description{font-size:13px}.game-details{font-size:11px}.play-button{font-size:13px}.welcome-steps strong{font-size:13px}.welcome-steps p{font-size:12px;color:#526a8a}.step-number{font-size:10px}.footer-signoff{font-size:11px}footer a{font-size:11px}
@media(max-width:900px){.game-count{font-size:11px}}
@media(max-width:600px){nav{font-size:12px}.game-count{font-size:9px}.section-kicker{font-size:8px}.game-description{font-size:13px}.game-details{font-size:10px}.welcome-steps p{font-size:12px}.game-info{padding-top:22px}.header-note{display:none}}
@media(max-width:370px){h1{font-size:38px;letter-spacing:0}}


/* A compact, open introduction keeps the collection close to the entrance. */
.arrival {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  align-items: center;
  gap: 40px;
  min-height: 285px;
  padding: 4px 14px 22px;
  border-bottom: 1px solid #bdc7d580;
}
.arrival-copy { padding: 8px 0 0; }
.eyebrow {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0;
  color: #4e6582;
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 1.8px;
}
.small-rule { width: 23px; height: 1px; background: #899db8; }
.eyebrow-divider { color: #93a6be; padding-inline: 1px; }
.arrival h1 {
  margin: 19px 0 14px;
  font-family: var(--serif);
  font-size: clamp(36px, 3.5vw, 48px);
  font-weight: 500;
  letter-spacing: 1px;
  line-height: 1.35;
}
.arrival h1 span { color: #5a7497; }
.intro { margin: 0; color: #4b617d; font-size: 14px; line-height: 1.9; }
.explore-button {
  display: inline-flex;
  justify-content: space-between;
  align-items: center;
  gap: 29px;
  min-height: 44px;
  margin-top: 16px;
  border-bottom: 1px solid #7a91b0;
  font-size: 13px;
  letter-spacing: .6px;
  color: #40536b;
  transition: color .2s, border-color .2s;
}
.explore-button span { font-size: 21px; transition: transform .2s; }
.explore-button:hover { color: #2a3747; border-color: #40536b; }
.explore-button:hover span { transform: translateY(3px); }
.arrival-art { position: relative; height: 255px; }
.arrival-art img {
  position: absolute;
  width: 350px;
  height: 302px;
  left: calc(50% - 175px);
  top: -26px;
  object-fit: contain;
}
.art-caption {
  position: absolute;
  bottom: 2px;
  left: 0;
  width: 100%;
  color: #5a7497;
  text-align: center;
  font-size: 8px;
  letter-spacing: 1.7px;
}
.games-section { padding-top: 31px; }
@media (max-width: 1150px) {
  .arrival { grid-template-columns: minmax(0, 1fr) 280px; gap: 12px; padding-inline: 5px; }
  .arrival h1 { font-size: 40px; }
  .intro { font-size: 13px; }
  .arrival-art img { width: 320px; height: 276px; left: calc(50% - 160px); top: -12px; }
}
@media (max-width: 900px) {
  .arrival { grid-template-columns: minmax(0, 1fr) 215px; min-height: 250px; gap: 5px; }
  .arrival h1 { font-size: 34px; letter-spacing: 0; }
  .eyebrow { font-size: 8px; letter-spacing: 1.2px; gap: 8px; }
  .intro { max-width: 320px; }
  .arrival-art { height: 230px; }
  .arrival-art img { width: 260px; height: 225px; left: calc(50% - 130px); top: -1px; }
  .art-caption { font-size: 6px; letter-spacing: 1px; bottom: 16px; }
}
@media (max-width: 600px) {
  .arrival { display: block; min-height: 0; padding: 19px 3px 25px; }
  .arrival-copy { padding: 0; }
  .arrival h1 { margin: 18px 0 12px; font-size: 32px; }
  .intro { max-width: 300px; font-size: 13px; }
  .explore-button { margin-top: 12px; font-size: 12px; }
  .arrival-art { display: none; }
  .games-section { padding-top: 26px; }
}
@media (max-width: 370px) {
  .arrival h1 { font-size: 29px; }
  .intro { font-size: 12px; max-width: 265px; }
}
@media (prefers-reduced-motion: reduce) {
  .explore-button, .explore-button span { transition: none; }
}


/* Muted blue-grey paper, with cool blue accents for navigation and play. */
:root { --paper: #eef1f5; --ink: #344355; --muted: #5d6b7e; --accent: #4e72a2; --soft: #b4c2d4; --line: #cbd4e0; }
body { background-color: var(--paper); }
.page-wash { opacity: .85; height: 100%; max-height: 1100px; }
.arrival h1 span { color: #637d9e; }
.brand-label { color: #526d90; border-color: #a2b5cd; }
nav a[aria-current] { background: #e2eaf4; border-color: #c2d0e2; color: #3e5d83; }
.game-thumbnail { background: linear-gradient(145deg, #d5dfeb, #a8bed9 70%, #c3cfdf); border-color: #bfccdd; }
.thumbnail-heading, .thumbnail-bottom { color: #344b68; }
.welcome-card { background: linear-gradient(140deg, #dce4eeec, #e8edf3d9); }
.status-dot { background: #7395bf; box-shadow: 0 0 0 4px #dfe7f1; }
.play-button { background: #4e72a2; border-color: #4e72a2; color: #f8fafc; box-shadow: 0 5px 13px -8px #3f5f9170; }
.play-button:hover { background: #3d5e8a; border-color: #3d5e8a; }
.explore-button { color: #446992; border-color: #8ca5c6; }
.explore-button:hover { color: #2d4c76; border-color: #5278a8; }
a:focus-visible { outline-color: #416a9c; }
::selection { background: #c3d5ed; color: #2d4564; }
@media (max-width: 600px) {
  .page-wash { max-height: 1300px; }
  .game-count { font-size: 10px; }
}
