.terms-card p {
  text-align: justify;
}

.terms-card {
  max-width: 1000px;
  margin: 0 auto;
  padding: clamp(22px, 4vw, 48px);
  background: #fff;
  border: 1px solid #dce2e9;
  border-top: 3px solid var(--color-gold);
  border-radius: 8px;
  box-shadow: var(--shadow-subtle);
}

.terms-card-full-width {
  max-width: none;
  width: 100%;
  border-top: 1px solid #dce2e9;
}

.terms-intro,
.terms-list p {
  color: var(--text-muted);
  line-height: 1.85;
}

.terms-list {
  margin: 28px 0 32px;
  padding-left: 1.6rem;
}

.terms-list li {
  padding: 20px 0 20px 12px;
  border-bottom: 1px solid #e8ecf1;
}

.terms-list li::marker {
  color: var(--bg-dark);
  font-weight: 800;
}

.terms-list h3 {
  font-family: var(--font-body);
  font-size: 1.12rem;
  font-weight: 800;
  color: var(--bg-dark);
  margin: 0 0 8px;
}

.terms-list p { margin: 0; }

.terms-contact {
  display: flex;
  gap: 20px;
  padding: 26px;
  background: var(--bg-dark);
  border-radius: 6px;
  color: var(--text-light-muted);
}

.terms-contact-icon { color: var(--color-gold); font-size: 1.8rem; }
.terms-contact h2 { color: var(--color-gold); font-size: 1.3rem; }
.terms-contact p { margin-bottom: 14px; color: #fff; }
.terms-contact-links { display: flex; flex-wrap: wrap; gap: 12px 24px; }
.terms-contact-links a { color: #fff; overflow-wrap: anywhere; }
.terms-contact-links a:hover { color: var(--color-gold); }
.terms-contact-links i { margin-right: 5px; color: var(--color-gold); }
.terms-contact-links a:focus-visible { outline: 2px solid var(--color-gold); outline-offset: 4px; }

@media (max-width: 575.98px) {
  .terms-contact { flex-direction: column; padding: 20px; gap: 10px; }
  .terms-list li { padding-left: 5px; }
}
