/* Homepage hub shortcuts: mascot beside seven compact links. */
.home-hero__aside { display:grid; grid-template-columns:minmax(0,1fr) 210px; gap:20px; align-items:center; min-width:0; }
.home-hero__aside .hero__art { order:0; width:100%; max-width:300px; justify-self:center; margin:0; }
.home-hero__aside .hero__cover { width:100%; height:auto; max-height:280px; object-fit:contain; }
.home-hubs { min-width:0; }
.home-hubs__title { color:#90d9cd; font:500 .7rem/1.4 var(--mono); letter-spacing:.08em; text-transform:uppercase; margin:0 0 12px; }
.home-hubs ol { list-style:none; margin:0; padding:0; display:grid; gap:6px; }
.home-hubs a { display:flex; align-items:center; gap:10px; min-height:39px; padding:8px 12px; border:1px solid #476068; border-radius:8px; background:#30474d; color:#fff; font:500 .85rem/1.3 var(--sans); text-decoration:none; transition:background 150ms ease,border-color 150ms ease; }
.home-hubs a:hover { background:#3d595e; border-color:#64d6bf; color:#fff; }
.home-hubs__n { font:500 .65rem/1.2 var(--mono); color:#7cd9c5; }
.home-hubs .icon { width:15px; height:15px; margin-left:auto; color:#7cd9c5; }
@media(min-width:900px) {
  .page--home .hero--cover .hero__grid, .cover__grid:has(.home-hero__aside) { grid-template-columns:minmax(0,1fr) 470px; gap:40px; align-items:center; }
}
@media(min-width:1200px) {
  .page--home .hero--cover .hero__grid, .cover__grid:has(.home-hero__aside) { grid-template-columns:minmax(0,1fr) 520px; gap:32px; }
}
@media(max-width:899px) { .home-hero__aside { width:100%; max-width:520px; justify-self:center; } }
@media(max-width:479px) { .home-hero__aside { grid-template-columns:110px minmax(0,1fr); gap:12px; } .home-hubs a { font-size:.78rem; padding:8px; } }
.back-top { position:fixed; right:24px; bottom:calc(24px + env(safe-area-inset-bottom)); z-index:50; display:grid; place-items:center; width:46px; height:46px; border:1px solid #486068; border-radius:12px; background:#23373d; color:#fff; box-shadow:0 4px 16px rgba(0,0,0,.16); cursor:pointer; }
.back-top[hidden] { display:none; }
.back-top:hover { background:#008f83; border-color:#008f83; }
.back-top .icon { width:20px; height:20px; transform:rotate(-90deg); }
@media print { .back-top { display:none; } }
