/* legal.css — minimal extras for Privacy, Terms, Thanks
   Reuses variables, type, and components from all.css
*/

:root{
  --legal-max: 1080px;
  --legal-muted: #6b7280;
  --legal-border: #e5e7eb;
  --legal-bg: #fafafa;
}

/* Hero tweak for legal pages */
.legal-hero .inner-banner-paragraph{ max-width: 560px; }

/* Legal content grid */
.legal-section{ background: var(--light-gray); }
.legal-grid{
  display: grid;
  gap: 28px;
  max-width: var(--legal-max);
}
@media (max-width: 991px){
  .legal-grid{ grid-template-columns: 1fr; }
}

/* TOC */
.legal-toc{
  position: sticky;
  top: 96px;
  align-self: start;
  background:#fff;
  border:1px solid var(--legal-border);
  border-radius:10px;
  padding:16px;
}
.legal-toc-title{
  font-size:14px; font-weight:600; color:#111827; margin-bottom:8px;
}
.legal-toc nav a{
  display:block; padding:8px 6px; border-radius:8px;
  color: var(--paragraph-gray);
  text-decoration:none; transition: background .25s;
}
.legal-toc nav a:hover{ background: var(--light-gray); color: var(--black); }
.legal-toc nav a.is-active{ background: #e8f5ee; color: var(--primary); font-weight:600; }

/* Content */
.legal-content{
  background:#fff; border:1px solid var(--legal-border);
  border-radius:10px; padding:28px;
}
.legal-updated{
  color: var(--legal-muted);
  font-size:14px; margin-bottom:18px;
}
.legal-block + .legal-block{ margin-top:26px; }
.legal-block h2{ margin-bottom:10px; }
.legal-block ul{ margin-left: 18px; }

/* Collapsible sections */
.collapsible .collapsible-toggle{
  cursor:pointer; display:flex; align-items:center; gap:10px;
}
.collapsible .collapsible-panel{
  overflow:hidden; height:auto;
  transition: height .35s ease;
}
.collapsible.is-collapsed .collapsible-panel{
  height:0 !important; padding-top:0 !important; padding-bottom:0 !important;
}
.collapsible.is-collapsed .collapsible-toggle::after{
  transform: rotate(0deg);
}
.collapsible .collapsible-toggle::after{
  content:""; width:10px; height:10px; border-right:2px solid #111; border-bottom:2px solid #111;
  transform: rotate(45deg); transition: transform .25s ease;
}
.nav-menu {
  justify-content: flex-start;
}
/* CTA block */
.legal-cta{ margin-top:30px; }

/* Thanks page */
.thanks-hero{ background: var(--light-gray); padding-top: 140px; }
.thanks-card{
  background:#fff; border:1px solid var(--legal-border); border-radius:14px;
  padding:40px; text-align:center; max-width:740px; margin: 0 auto;
}
.thanks-card h1{ margin-top:6px; }
.thanks-icon{ width:42px; height:42px; }
.thanks-actions{ display:flex; gap:16px; justify-content:center; margin-top:20px; flex-wrap:wrap; }
.thanks-contact{ margin-top:18px; color: var(--paragraph-gray); }
.thanks-contact a{ color: var(--primary); text-decoration:none; }
    .navbar-absolute {
        height: 85px;
    }