/* Full-story mobile layout: keep the poster as the visual anchor above the details. */
@media (max-width: 590px) {
  body.kc-body--project .kc-project__hero {
    min-height: 0 !important;
    padding: 22px 14px 42px !important;
  }

  body.kc-body--project .kc-back-link {
    margin-bottom: 20px !important;
  }

  body.kc-body--project .kc-project__layout {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 24px !important;
  }

  body.kc-body--project .kc-project__poster-wrap {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    align-self: center !important;
    width: 100% !important;
    gap: 10px !important;
  }

  body.kc-body--project .kc-project__poster {
    width: clamp(184px, 58vw, 220px) !important;
    margin: 0 auto !important;
  }

  body.kc-body--project .kc-project__poster-play {
    width: min(100%, 220px) !important;
    min-height: 42px !important;
    margin: 0 !important;
  }

  body.kc-body--project .kc-project__about {
    width: 100% !important;
    min-width: 0 !important;
    padding: 0 !important;
  }

  body.kc-body--project .kc-project__head {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
  }

  body.kc-body--project .kc-project h1 {
    font-size: 26px !important;
    letter-spacing: -0.02em !important;
  }

  body.kc-body--project .kc-project__external-ratings {
    position: static !important;
    padding-top: 0 !important;
    align-items: flex-start !important;
    gap: 14px !important;
  }

  body.kc-body--project .kc-project__summary {
    margin-top: 12px !important;
    -webkit-line-clamp: 5 !important;
  }

  body.kc-body--project .kc-project__actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin-top: 18px !important;
  }

  body.kc-body--project .kc-project__actions .kc-button {
    justify-content: center !important;
    min-width: 0 !important;
    padding: 0 10px !important;
  }

  /* The desktop project grid reserves columns for facts; on phones it must read as one story. */
  body.kc-body--project .kc-project__details {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 26px !important;
    padding: 34px 0 !important;
  }

  body.kc-body--project .kc-project__description {
    max-width: none !important;
    font-size: 14px !important;
    line-height: 1.72 !important;
  }

  body.kc-body--project .kc-project__facts {
    gap: 14px !important;
  }

  body.kc-body--project .kc-project__facts div {
    gap: 4px !important;
  }

  body.kc-body--project .kc-project__facts dd {
    font-size: 13px !important;
    line-height: 1.62 !important;
  }

  body.kc-body--project .kc-project__technical {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px 18px !important;
    margin-top: 0 !important;
    padding-top: 22px !important;
  }

  body.kc-body--project .kc-project__technical-item--translation {
    grid-column: 1 / -1;
  }
}
