/* Mobile games first; Roblox catalog second. */
html { scroll-behavior:smooth; scroll-padding-top:24px; }
.skip-link { position:absolute; top:-60px; left:18px; z-index:20; padding:12px; background:#fff; color:#09090b; }
.skip-link:focus { top:12px; }
nav { justify-content:space-between; }
.catalog-nav { display:flex; gap:26px; }
.catalog-nav a { font-size:14px; color:var(--muted); }
.catalog-nav a:hover { color:var(--txt); }
#mobile-games { padding:48px 0 64px; }
.catalog-heading { margin-bottom:30px; }
.catalog-heading h1 { font-size:clamp(34px,4vw,52px); letter-spacing:-.045em; margin:0; text-align:left; }
.mobile-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.mobile-card { min-width:0; padding:22px; background:var(--panel); border:1px solid var(--line); border-radius:16px; display:flex; flex-direction:column; scroll-margin-top:24px; }
.game-heading { display:block; }
.icon-panel { background:linear-gradient(145deg,#20324c,#151b28); border-radius:10px; min-height:214px; display:grid; place-items:center; margin-bottom:23px; }
.mobile-card:nth-child(2) .icon-panel { background:linear-gradient(145deg,#34301b,#1f1d16); }
.mobile-card:nth-child(3) .icon-panel { background:linear-gradient(145deg,#253828,#171f1c); }
.icon-panel img { width:144px; height:144px; border-radius:24px; object-fit:contain; box-shadow:0 10px 24px #0004; }
.mobile-card h2 { font-size:24px; line-height:1.22; letter-spacing:-.04em; margin:0 0 12px; }
.game-description { color:var(--muted); font-size:15px; line-height:1.65; margin:0 0 25px; }
.store-links { margin-top:auto; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.store-button { display:flex; align-items:center; justify-content:center; gap:9px; min-width:0; width:100%; min-height:54px; padding:9px 8px; border:1px solid #8e8e93; border-radius:8px; background:#000; color:#fff; font-family:Arial,sans-serif; text-align:left; line-height:1.15; text-decoration:none; }
.store-button img { display:block; flex:0 0 auto; width:25px; height:29px; object-fit:contain; }
.store-copy { display:flex; flex-direction:column; gap:3px; min-width:0; }
.store-copy small { font-size:9px; font-weight:400; letter-spacing:.15px; white-space:nowrap; }
.store-copy strong { font-size:14px; font-weight:600; letter-spacing:-.25px; white-space:nowrap; }
.play-button:hover { background:#181818; border-color:#fff; color:#fff; }
.apple-button:disabled { opacity:1; color:#fff; cursor:default; }
#portfolio { border-top:1px solid var(--line); padding-top:54px; }
#portfolio h2 { font-size:clamp(30px,3.3vw,42px); }
#portfolio .stats { margin-top:40px; }
footer { margin-top:0; }
footer .foot { align-items:center; }
footer a { font-size:12px; color:var(--muted); }
@media(max-width:1100px) and (min-width:721px) {
  .mobile-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
  .mobile-card { padding:16px; }
  .mobile-card h2 { font-size:20px; }
  .icon-panel { min-height:175px; }
  .icon-panel img { width:120px; height:120px; }
}
@media(max-width:720px) {
  nav { height:auto; min-height:84px; padding:16px 0; flex-wrap:wrap; gap:14px; }
  .catalog-nav { gap:20px; }
  .catalog-nav a { font-size:12px; }
  #mobile-games { padding:30px 0 42px; }
  .catalog-heading { margin-bottom:24px; }
  .mobile-grid { grid-template-columns:1fr; gap:18px; }
  .mobile-card { padding:20px; }
  .game-heading { display:flex; align-items:center; gap:16px; margin-bottom:16px; }
  .icon-panel { background:none!important; min-height:0; flex-shrink:0; margin:0; }
  .icon-panel img { width:86px; height:86px; border-radius:18px; }
  .mobile-card h2 { margin:0; font-size:23px; }
  .game-description { margin-bottom:20px; font-size:14px; }
  #portfolio { padding-top:40px; }
}
@media(max-width:360px) {
  .store-links { gap:8px; }
  .store-button { gap:7px; padding:9px 6px; }
  .store-button img { width:21px; height:26px; }
  .store-copy strong { font-size:12px; }
  .store-copy small { font-size:8px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
