@media (max-width: 820px) {
  .tool-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .home-view {
    padding-top: 70px;
  }
}

@media (max-width: 600px) {
  .site-header,
  main,
  footer {
    width: min(100% - 30px, 1180px);
  }

  .site-header {
    padding: 20px 0;
  }

  .header-note {
    display: none;
  }

  .home-view {
    padding: 50px 0 52px;
  }

  .hero h1 {
    font-size: 43px;
  }

  .hero p {
    font-size: 15px;
  }

  .tools-section {
    margin-top: 56px;
  }

  .tool-grid {
    grid-template-columns: 1fr;
  }

  .tool-card {
    min-height: 190px;
  }

  .tool-view {
    padding-top: 24px;
  }

  .workspace {
    padding: 12px;
    border-radius: 20px;
  }

  .toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .action-group .button {
    flex: 1;
  }

  .toolbar > .button {
    align-self: flex-end;
  }

  .editor {
    min-height: 430px;
    padding: 18px 18px 18px 64px;
    font-size: 13px;
  }

  .line-numbers {
    width: 44px;
    padding-top: 18px;
  }

  .hierarchy-guides {
    left: 64px;
    padding-top: 18px;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}
