/* Mobile-first enhancements */

@media (min-width: 640px) {
  .variant-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .variant-card.is-priority-1 {
    grid-column: 1 / -1;
  }

  .game-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .hero {
    padding: var(--space-7) var(--space-6);
  }

  .page-hero {
    padding: var(--space-7) var(--space-6);
  }

  .content-block {
    padding: var(--space-6);
  }
}

@media (min-width: 900px) {
  .nav-toggle {
    display: none;
  }

  .header-actions {
    order: 3;
    margin-left: 0.5rem;
  }

  .site-nav {
    display: block;
    position: static;
    background: transparent;
    border: 0;
    box-shadow: none;
    padding: 0;
    margin-left: auto;
  }

  .nav-list {
    flex-direction: row;
    align-items: center;
    gap: 0.15rem;
  }

  .nav-list > li > a,
  .nav-dropdown > summary {
    position: relative;
    padding: 0.55rem 0.8rem;
    font-size: 1.02rem;
  }

  .nav-list > li > a:not(.nav-cta)::after {
    content: "";
    position: absolute;
    left: 0.8rem;
    right: 0.8rem;
    bottom: 0.3rem;
    height: 1px;
    background: var(--color-accent);
    transform: scaleX(0);
    transition: transform var(--transition);
  }

  .nav-list > li > a:not(.nav-cta):hover::after,
  .nav-list > li > a[aria-current="page"]::after {
    transform: scaleX(1);
  }

  .nav-list > li > a:hover {
    background: transparent;
  }

  .nav-dropdown {
    position: relative;
  }

  .nav-dropdown-panel {
    position: absolute;
    top: calc(100% + 0.35rem);
    left: 0;
    min-width: 240px;
    padding: 0.85rem;
    border-radius: 12px;
    background: var(--wood-grad), var(--color-bg-elevated);
    border: 1px solid var(--color-accent-deep);
    box-shadow: var(--shadow);
    display: none;
    z-index: 60;
  }

  .nav-dropdown[open] .nav-dropdown-panel,
  .nav-dropdown:hover .nav-dropdown-panel {
    display: grid;
  }

  .hero {
    grid-template-columns: 1.05fr 0.95fr;
    gap: var(--space-7);
    margin-top: var(--space-7);
    padding: var(--space-8) var(--space-7);
  }

  .hero-visual {
    min-height: 0;
    align-self: center;
  }

  .hero-visual > img {
    max-height: min(62vh, 28rem);
  }

  .page-hero.two-col .hero-visual > img {
    max-height: min(58vh, 26rem);
  }

  .game-thumb > img {
    max-height: 14rem;
  }

  .variant-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .variant-card.is-priority-1 {
    grid-column: auto;
    transform: translateY(-6px);
  }

  .variant-card.is-priority-1:hover {
    transform: translateY(-8px);
  }

  .game-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .footer-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .page-hero.two-col {
    grid-template-columns: 1.2fr 0.8fr;
    align-items: center;
    gap: var(--space-6);
  }

  .steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1100px) {
  :root {
    --wrap: min(1180px, calc(100% - 3rem));
  }
}

@media (prefers-reduced-motion: reduce) {
  .nav-list > li > a:not(.nav-cta)::after {
    transition: none;
  }

  .variant-card.is-priority-1,
  .variant-card.is-priority-1:hover {
    transform: none;
  }
}
