/* ================================
   Terms and Conditions – Frederick's Apartelle
   ================================ */

.terms-page {
  max-width: 860px;
  margin: 0 auto;
  padding: 2.5rem 1.5rem;
  font-family: var(--font-sans, 'Segoe UI', sans-serif);
  line-height: 1.7;
  color: var(--text);
  background: var(--surface);
}

.terms-page h1 {
  font-size: 2rem;
  font-weight: 700;
  color: var(--primary);
  margin-bottom: 1.2rem;
}

.terms-page .intro {
  max-width: 700px;
  margin: 0 auto 2rem auto;
  font-size: 1.05rem;
  color: var(--muted);
}

.terms-content h2 {
  font-size: 1.4rem;
  margin-top: 2rem;
  margin-bottom: 0.8rem;
  color: var(--primary-dark);
  border-bottom: 2px solid var(--border);
  padding-bottom: 0.3rem;
}

.terms-content h3 {
  font-size: 1.2rem;
  margin-top: 1.5rem;
  margin-bottom: 0.6rem;
  color: var(--accent);
}

.terms-content ul {
  padding-left: 1.5rem;
  margin-bottom: 1.2rem;
}

.terms-content ul li {
  margin-bottom: 0.4rem;
  list-style-type: disc;
}

.terms-content ul li ul {
  margin-top: 0.4rem;
  padding-left: 1.2rem;
  list-style-type: circle;
}

.terms-content p.text-muted {
  font-size: 0.95rem;
  color: #888;
  margin-top: 2rem;
}

/* Fade-in animation if not globally applied */
.terms-page.fade-in {
  opacity: 0;
  animation: fadeIn ease 0.8s forwards;
}

@keyframes fadeIn {
  to {
    opacity: 1;
  }
}



/* Only add these if not already in your terms.css */
.collapsible-header {
  cursor: pointer;
  position: relative;
  user-select: none;
  padding-right: 2.1em;
  transition: color 0.2s;
}

.collapsible-header:after {
  content: "▲";
  position: absolute;
  right: 0.2em;
  top: 0.1em;
  font-size: 0.9em;
  color: var(--accent, #cc3a1e);
  transition: transform 0.3s;
}

.collapsible-section.collapsed .collapsible-header:after {
  content: "▼";
}

.collapsible-content {
  transition: max-height 0.3s, opacity 0.2s;
  overflow: hidden;
  max-height: 2000px;
  opacity: 1;
  will-change: max-height, opacity;
}

.collapsible-section.collapsed .collapsible-content {
  max-height: 0 !important;
  opacity: 0.1;
  pointer-events: none;
}
