/* ==========================================================================
   TERMS & PRIVACY PAGE
   Long-form legal document typography and alignment.
   Loaded only on the Terms & Privacy page, after responsive.css.
   ========================================================================== */

#terms-page {
  padding-bottom: 80px;
}

/*------------------------------------------*/
/*   DOCUMENT WRAPPER
/*------------------------------------------*/

#terms-page .terms-box {
  margin-bottom: 0;
  text-align: left;
}

#terms-page .terms-box .wpb_text_column {
  margin-bottom: 0;
}

/*------------------------------------------*/
/*   DOCUMENT HEADER
/*------------------------------------------*/

#terms-page .terms-header {
  margin-bottom: 45px;
  padding-bottom: 30px;
  border-bottom: 1px solid #e5e5e5;
}

#terms-page .terms-header h2 {
  margin-bottom: 15px;
}

#terms-page p.terms-updated {
  margin-bottom: 20px;
  color: #6c7a89;
  font-size: 1rem;
  letter-spacing: 0.3px;
}

#terms-page p.terms-updated span {
  color: #222;
  font-weight: 700;
}

/*------------------------------------------*/
/*   HEADINGS
/*------------------------------------------*/

#terms-page .terms-box h3 {
  margin-top: 55px;
  margin-bottom: 20px;
  padding-bottom: 12px;
  border-bottom: 1px solid #eee;
}

#terms-page .terms-box h4 {
  margin-top: 45px;
  margin-bottom: 18px;
}

#terms-page .terms-box h5 {
  margin-top: 30px;
  margin-bottom: 12px;
}

/* First heading in the document must not push away from the header rule */
#terms-page .terms-box > *:first-child,
#terms-page .terms-box .wpb_wrapper > *:first-child {
  margin-top: 0;
}

/*------------------------------------------*/
/*   BODY TEXT
/*------------------------------------------*/

#terms-page .terms-box p {
  margin-bottom: 16px;
  line-height: 1.75;
}

#terms-page .terms-box p:last-child {
  margin-bottom: 0;
}

#terms-page .terms-box p.terms-note {
  margin-top: 25px;
  padding: 20px 25px;
  background-color: #f6f8fa;
  border-left: 3px solid #16a2e0;
  border-radius: 4px;
  font-weight: 600;
  color: #333;
}

#terms-page .terms-box strong {
  color: #222;
  font-weight: 700;
}

/*------------------------------------------*/
/*   LISTS
/*------------------------------------------*/

#terms-page ul.terms-list {
  list-style: disc;
  margin: 0 0 20px 20px;
  padding: 0;
}

#terms-page ul.terms-list li {
  margin-bottom: 8px;
  line-height: 1.7;
}

#terms-page ul.terms-list li:last-child {
  margin-bottom: 0;
}

/* Two-column list for short, single-phrase items */
#terms-page ul.terms-list.list-2-col {
  column-count: 2;
  column-gap: 40px;
}

#terms-page ul.terms-list.list-2-col li {
  break-inside: avoid;
}

/*------------------------------------------*/
/*   CONTACT BLOCK
/*------------------------------------------*/

#terms-page .terms-contact {
  margin-top: 45px;
  padding: 30px 35px;
  background-color: #f6f8fa;
  border-radius: 6px;
}

#terms-page .terms-contact h4 {
  margin-top: 0;
  margin-bottom: 15px;
}

#terms-page .terms-contact ul.terms-list {
  margin-bottom: 0;
  list-style: none;
  margin-left: 0;
}

#terms-page .terms-contact ul.terms-list li {
  margin-bottom: 6px;
}

#terms-page .terms-box a {
  color: #16a2e0;
  font-weight: 700;
  text-decoration: underline;
}

#terms-page .terms-box a:hover {
  color: #444;
}

/*------------------------------------------*/
/*   RESPONSIVE
/*------------------------------------------*/

@media (max-width: 991.99px) {
  #terms-page {
    padding-bottom: 60px;
  }
  #terms-page .terms-box h3 {
    margin-top: 45px;
  }
  #terms-page .terms-box h4 {
    margin-top: 35px;
  }
}

@media (max-width: 767.99px) {
  #terms-page {
    padding-bottom: 40px;
  }
  #terms-page .terms-header {
    margin-bottom: 32px;
    padding-bottom: 22px;
  }
  #terms-page .terms-box h3 {
    margin-top: 38px;
  }
  #terms-page ul.terms-list.list-2-col {
    column-count: 1;
  }
  #terms-page p.terms-note,
  #terms-page .terms-contact {
    padding: 18px 20px;
  }
}
