@media (max-width: 768px) {

  body {
    overflow: hidden;
  }

  #matchmaker-quiz,
  #matchmaker-results {
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100dvh;
    max-width: none;
    max-height: none;
    box-sizing: border-box;

    margin: 0;
    padding:
      env(safe-area-inset-top)
      env(safe-area-inset-right)
      env(safe-area-inset-bottom)
      env(safe-area-inset-left);

    border-radius: 0;

    background: var(--mm-app-bg, #0b0d14);
    backdrop-filter: none;
    -webkit-backdrop-filter: none;

    overflow-x: hidden;

    z-index: 1000;
  }

  #matchmaker-quiz {
    overflow-y: hidden;
  }

  #matchmaker-results {
    overflow-y: auto;
  }

  #matchmaker-quiz .quiz-content {
    padding-top: 7rem;
  }

  #matchmaker-results {
    padding-top: calc(env(safe-area-inset-top) + 4.25rem);
    background: transparent;
  }

  #matchmaker-results .book-stage {
    padding: 0.5rem 1rem 6.5rem;
    width: 100%;
    max-width: none;
    margin: 0 auto;
  }

  #matchmaker-results .mm-books-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.85rem;
    width: 100%;
  }

  #matchmaker-results .mm-books-grid.mm-books-rail {
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: minmax(185px, 74vw);
    gap: 0.9rem;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 0.95rem;
  }

  #matchmaker-results .mm-books-rail-wrap {
    gap: 0.85rem;
  }

  #matchmaker-results .mm-books-scrollbar__track {
    height: 10px;
  }

  #matchmaker-results .mm-books-scrollbar__thumb {
    top: -2px;
    height: 12px;
    min-width: 52px;
  }

  #matchmaker-results .mm-books-rail-nav {
    width: 36px;
    height: 36px;
    top: 45%;
  }

  #matchmaker-results .mm-books-rail-nav--prev {
    left: -6px;
  }

  #matchmaker-results .mm-books-rail-nav--next {
    right: -6px;
  }

  #matchmaker-results .book-card {
    padding: 0.55rem;
    border-radius: 0.95rem;
  }

  #matchmaker-results .book-cover-link {
    background: #ffffff;
    padding: 0.55rem;
    border-radius: 0.75rem;
  }

  #matchmaker-results .book-cover-link img {
    max-width: 88%;
    max-height: 100%;
  }

  #matchmaker-results .book-info {
    margin-top: 0.65rem;
    gap: 0.25rem;
  }

  #matchmaker-results .book-title {
    font-size: 0.82rem;
    line-height: 1.25;
  }

  #matchmaker-results .book-author {
    font-size: 0.72rem;
  }

  #matchmaker-results .btn-details.js-link {
    font-size: 0.75rem;
  }

  .question-title {
    font-size: 1.1rem;
    line-height: 1.2;
  }

  .question-intro {
    font-size: 1rem;
  }

  .quiz-meta {
    gap: 10px;
    margin: 0 10px;
  }

  .choice-grid {
    padding-top: 1rem;
    grid-template-columns: 1fr;
    gap: 0.8rem;
  }

  .choice-grid.is-two-column {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .choice-grid.is-two-column .btn-choice.is-orphan-choice {
    grid-column: 1 / -1;
    justify-self: center;
    width: calc(50% - 0.4rem);
    max-width: 22rem;
  }

  .btn-choice {
    padding: 1.2rem 1.2rem;
    font-size: 1.16rem;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 4rem;
    line-height: 1.25;
  }

  .book-like-wrapper {
    bottom: 0.1rem;
    right: 0.1rem;
  }

  .book-like-wrapper button,
  .book-like-wrapper a {
    width: 34px;
    height: 34px;
    min-width: 34px;
    min-height: 34px;

    background: rgba(255, 255, 255, 0.98);
    border: 2.5px solid #ff80ab;
    box-shadow:
      0 6px 20px rgba(255, 128, 171, 0.5),
      0 3px 12px rgba(0, 0, 0, 0.4);

    font-size: 20px;
  }

  .book-like-wrapper img,
  .book-like-wrapper svg {
    width: 17px;
    height: 17px;
  }

  .book-like-wrapper button:active,
  .book-like-wrapper a:active {
    transform: scale(0.92);
    background: #ff80ab;
    border-color: #fff;
    color: white;
  }

  .reveal-cta {
    position: sticky;
    bottom: max(env(safe-area-inset-bottom, 0.75rem), 0.75rem);
    left: auto;
    right: auto;
    width: 100%;
    max-width: none;
    margin-top: auto;
    padding-top: 0.85rem;
    padding-bottom: calc(env(safe-area-inset-bottom, 0rem) + 0.2rem);
    transform: none;
    z-index: 20;
    background: linear-gradient(
      180deg,
      rgba(10, 8, 18, 0) 0%,
      rgba(10, 8, 18, 0.82) 28%,
      rgba(10, 8, 18, 0.94) 100%
    );
  }

  .reveal-cta .btn-reveal-cta {
    width: 100%;
    text-align: center;
  }

  .quiz-card[data-type="reveal"] #js-reveal-grid .book-info {
    display: none;
  }

  .quiz-card[data-type="reveal"] #js-reveal-grid .btn-details.js-link {
    display: none;
  }
  
  .mm-results-kicker {
    margin-bottom: 0.4rem;
    font-size: 0.72rem;
  }

  .mm-tier-filter {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.6rem;
    width: 100%;
    max-width: 100%;
    margin: 1rem auto 1.6rem;
  }

  .mm-tier-filter__btn {
    width: auto;
    min-width: 0;
    flex: 0 0 auto;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 0.35rem 0.45rem;
    padding: 0.72rem 0.9rem;
    border-radius: 999px;
  }

  .mm-tier-filter__btn > span {
    font-size: 0.92rem;
  }

  .mm-tier-filter__btn > strong {
    font-size: 0.78rem;
    white-space: nowrap;
  }

  .mm-potential-results {
    margin-top: 3rem;
    padding-top: 1.6rem;
  }

  .mm-potential-results__header {
    margin-bottom: 1.25rem;
  }

  .mm-potential-results__kicker {
    font-size: 0.68rem;
  }

  .mm-potential-results__header h3 {
    font-size: 1.25rem;
  }

  .mm-potential-results__header p {
    font-size: 0.9rem;
  }

  .mm-books-grid--potential {
    opacity: 0.9;
  }
}