/* static/css/gantt/login.css */
.body-copy {
  max-width: 70%;
  margin: 0 auto 3rem;
  font-size: 1.2rem;
}

.section-box {
  background-color: #f5f5f5;
  border: 0.3rem solid #ccc;
  padding: 1rem;
  margin-top: 1.5rem;
  border-radius: 1rem;
}

.section-box-cta {
  background-color: #fff5f5;
  border-color: #ff6b6b;
}

.h2 {
  font-size: 1.5rem;
  font-weight: 700;
  margin: 0 0 0.5rem 0;
  text-align: center;
}

.cta-description {
  line-height: 1.7;
  text-align: left;
}

.tight-p {
  margin: 0.3em 0;
  line-height: 1.3;
  font-size: 1rem;
  text-align: left;
}

.cta-button {
  display: inline-block;
  color: #fff;
  font-size: 1.2rem;
  padding: 0.8rem 2rem;
  border-radius: 1.5rem;
  text-decoration: none;
  font-weight: 700;
  transition: background-color 0.3s ease;
  background-color: #ff6b6b;
}

.cta-button:hover {
  background-color: #ff4d4f;
}

.trial-form {
  margin-top: 0.8rem;
  text-align: center;
}

.trial-email {
  width: min(420px, 95%);
  padding: 0.7rem;
  border-radius: 0.7rem;
  border: 1px solid #bbb;
  font-size: 1rem;
  background-color: #fff;
}

.trial-form-button-wrap {
  margin-top: 0.8rem;
}

.trial-submit-button {
  border: 0;
  cursor: pointer;
}

.trial-msg {
  margin-top: 0.8rem;
  text-align: center;
}

.recaptcha-wrap {
  display: flex;
  justify-content: center;
  margin-top: 0.8rem;
}

.recaptcha-wrap .g-recaptcha {
  transform-origin: center top;
}

.trial-notes {
  margin-top: 0.8rem;
  text-align: left;
}

.security-alert-box {
  margin-top: 1rem;
  padding: 1rem;
  background: #fff;
  border: 1px solid #ffb3b3;
  border-radius: 0.7rem;
  text-align: left;
}

.security-alert-title {
  margin: 0;
  font-weight: 700;
  color: #d94841;
}

.security-alert-text {
  margin-top: 0.5rem;
}

.plan-section-box {
  margin-top: 1.2rem;
}

.signup-plan-table-wrapper {
  margin-top: 1rem;
  overflow-x: auto;
}

.signup-plan-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  background-color: #fff;
}

.signup-plan-table th,
.signup-plan-table td {
  border: 0.0625rem solid #bbb;
  padding: 0.75rem 0.6rem;
  font-size: 1rem;
  text-align: center;
  vertical-align: middle;
  line-height: 1.6;
}

.signup-plan-table th {
  background-color: #f2f2f2;
  font-weight: 700;
}

.signup-plan-table th:nth-child(2),
.signup-plan-table td:nth-child(2) {
  background-color: #f7fbff;
}

.signup-plan-table th:nth-child(3),
.signup-plan-table td:nth-child(3) {
  background-color: #fff5f5;
}

.signup-plan-table td:first-child {
  width: 24%;
  font-weight: 700;
  background-color: #fafafa;
}

@media (max-width: 480px) {
  .signup-plan-table th,
  .signup-plan-table td {
    font-size: 0.92rem;
    padding: 0.65rem 0.45rem;
  }
}

@media (max-width: 768px) {
  .body-copy {
    max-width: 90%;
  }

  .section-box {
    padding: 0.7rem;
  }
}

@media (max-width: 480px) {
  .cta-button {
    width: 100%;
    max-width: 100%;
    font-size: 1rem;
    padding: 0.85rem 1rem;
  }
}