/* دکمه پایین کارت + موبایل — فایل جدید تا کش جای قبلی دکمه را نگه ندارد */
.vote-campaign__panel {
  display: flex !important;
  flex-direction: column !important;
}

.vote-campaign__stamp {
  transform: none !important;
}

a.vote-box.vote-box--hero {
  margin-top: auto !important;
  margin-bottom: 0 !important;
}

@media (max-width: 900px) {
  .vote-campaign__layout {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 1.1rem !important;
  }

  .vote-campaign__panel {
    order: 1 !important;
  }

  .vote-campaign__portrait {
    order: 2 !important;
    height: auto !important;
  }

  .vote-campaign__portrait img {
    position: static !important;
    inset: auto !important;
    width: 100% !important;
    height: auto !important;
    max-height: min(62vh, 480px) !important;
    object-fit: contain !important;
  }

  .vote-campaign__facts {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .vote-campaign__facts {
    grid-template-columns: 1fr !important;
  }

  a.vote-box.vote-box--hero {
    padding: 1.15rem 1rem !important;
  }

  a.vote-box.vote-box--hero .vote-box__btn {
    font-size: 1.35rem !important;
  }

  a.vote-box.vote-box--hero .vote-box__line {
    white-space: normal !important;
    text-align: center;
  }

  .vote-campaign__highlights {
    justify-content: center;
  }

  .vote-resume {
    grid-template-columns: 1fr !important;
  }

  .vote-campaign,
  .vote-campaign__panel,
  .vote-campaign__portrait {
    max-width: 100%;
    overflow-x: hidden;
  }
}
