.mobile-site-menu,
.mobile-home-menu {
  display: none;
}

@media (max-width: 820px) {
  .site-header .nav {
    display: none;
  }

  .mobile-site-menu,
  .mobile-home-menu {
    display: block;
    position: absolute;
    right: 18px;
    top: 12px;
    z-index: 45;
    font-family: Georgia, 'Times New Roman', serif;
    line-height: 1.2;
  }

  .mobile-home-menu {
    right: 14px;
    top: 14px;
    z-index: 8;
  }

  .mobile-site-menu summary,
  .mobile-home-menu summary {
    display: flex;
    min-width: 76px;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 8px 11px;
    border: 1px solid rgba(155, 106, 33, .32);
    border-radius: 999px;
    background: rgba(255, 253, 248, .96);
    color: #6b4715;
    font-size: 12px;
    letter-spacing: .08em;
    cursor: pointer;
    list-style: none;
  }

  .mobile-site-menu summary::-webkit-details-marker,
  .mobile-home-menu summary::-webkit-details-marker {
    display: none;
  }

  .mobile-site-menu summary span,
  .mobile-home-menu summary span {
    font-size: 11px;
    letter-spacing: 0;
  }

  .mobile-site-menu nav,
  .mobile-home-menu nav {
    position: absolute;
    right: 0;
    top: 51px;
    display: grid;
    width: min(260px, calc(100vw - 36px));
    overflow: hidden;
    border: 1px solid rgba(145, 101, 36, .2);
    border-radius: 16px;
    background: #fffdf8;
    box-shadow: 0 16px 45px rgba(52, 37, 17, .2);
  }

  .mobile-site-menu nav a,
  .mobile-home-menu nav a {
    display: flex;
    min-height: 44px;
    align-items: center;
    padding: 11px 16px;
    border-bottom: 1px solid rgba(145, 101, 36, .12);
    color: #352719;
    text-decoration: none;
    font-size: 13px;
    line-height: 1.35;
    white-space: nowrap;
  }

  .mobile-site-menu nav a:last-child,
  .mobile-home-menu nav a:last-child {
    border-bottom: 0;
  }

  .member-page {
    padding: 30px 16px;
  }

  .member-art,
  .member-form {
    padding-left: 26px;
    padding-right: 26px;
  }

  .library-page {
    padding: 34px 16px 64px;
  }

  .library-head h1 {
    font-size: 34px;
  }

  .actions a,
  .actions button {
    min-height: 44px;
  }

  .filter-chip {
    min-height: 44px;
  }

  main,
  .library,
  .public-selection,
  .library-head,
  .library-tools,
  .taxonomy-group,
  .catalog-utilities,
  .search-wrap,
  .public-card,
  .public-card > div:last-child {
    min-width: 0;
    max-width: 100%;
  }

  .library-tools,
  .filter-chips {
    width: 100%;
  }

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

  .public-card > div:last-child {
    overflow-wrap: anywhere;
  }

  .source-details summary {
    display: flex;
    min-height: 40px;
    align-items: center;
  }

  .now-playing button,
  .mini-player button {
    min-width: 44px;
    width: 44px;
    height: 44px;
  }
}

@media (min-width: 701px) and (max-width: 820px) {
  .mobile-home-menu {
    display: none;
  }
}

@media (max-width: 370px) {
  .works-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .cover {
    height: auto;
    aspect-ratio: 16 / 9;
  }
}
