@media (max-width: 1080px) {
  .studio-header {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .compact-grid,
  .synthesis-grid,
  .source-material-grid,
  .format-guide-grid,
  .screen-result-grid {
    grid-template-columns: 1fr;
  }

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

@media (max-width: 860px) {
  .editorial-spread {
    grid-template-columns: 1fr;
  }

  .page-right {
    border-top: 1.5px solid var(--sck-red);
    border-left: 0;
  }
}

@media (max-width: 760px) {
  body::before {
    width: var(--sck-rail-width);
  }

  .studio-header,
  .studio-shell {
    width: min(calc(100vw - var(--sck-rail-width) - 28px), var(--sck-max));
  }

  .studio-header {
    margin: 12px auto 22px;
    padding: 14px;
    border-radius: 24px;
  }

  .brand img {
    width: 42px;
    height: 42px;
  }

  .header-actions {
    width: 100%;
    justify-content: stretch;
  }

  .nav-pill {
    flex: 1 1 120px;
  }

  .progress-copy {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }

  .progress-editorial small {
    text-align: left;
  }

  .editorial-page {
    padding: 24px 20px;
  }

  .editorial-page h2 {
    font-size: clamp(2.6rem, 16vw, 4.2rem);
  }

  .editorial-choice-grid,
  .choice-grid,
  .field-grid,
  .level-grid,
  .screen-actions,
  .synthesis-actions,
  .editorial-actions {
    grid-template-columns: 1fr;
  }

  .editorial-choice-card {
    min-height: 64px;
  }

  .studio-drawer {
    inset: 0;
    width: 100vw;
    max-height: 100vh;
    border-radius: 0;
    border-width: 0 0 0 2px;
  }

  .input-with-suffix {
    grid-template-columns: 1fr;
  }

  .input-with-suffix input,
  .input-with-suffix > span {
    border-radius: 18px;
  }

  .input-with-suffix > span {
    min-height: 44px;
    border-left: 1.5px solid var(--sck-red);
    border-top: 0;
  }

  .duration-input {
    grid-template-columns: 1fr;
  }

  .conditional-field {
    padding-left: 0;
  }
}

@media (max-width: 420px) {
  .studio-header,
  .studio-shell {
    width: min(calc(100vw - var(--sck-rail-width) - 24px), var(--sck-max));
  }

  .brand {
    gap: 10px;
    font-size: 0.95rem;
  }

  .editorial-spread {
    border-radius: 26px;
  }

  .editorial-page {
    padding: 22px 16px;
  }

  .editorial-page h2 {
    font-size: clamp(2.2rem, 13.5vw, 3.4rem);
  }

  .mindset-callout,
  .writing-zone,
  .mini-validation,
  .live-sentence,
  .source-material,
  .mindset-block,
  .source-list,
  .format-guide,
  .screen-result {
    padding: 16px;
  }

  .source-material-header,
  .source-material-link {
    margin-left: 0;
  }

  .screen-example summary,
  .screen-example-body {
    padding-left: 16px;
    padding-right: 16px;
  }

  .module-link {
    grid-template-columns: auto 1fr;
    padding: 12px;
  }

  .module-number {
    width: auto;
    min-width: 36px;
    height: 36px;
    padding: 0 8px;
    font-size: 0.62rem;
  }

  .opening-cover {
    min-height: auto;
    padding: 24px;
  }

  .opening-actions {
    grid-template-columns: 1fr;
  }

  .opening-cover h2 {
    font-size: clamp(2.7rem, 15vw, 4.6rem);
  }
}
